OpenVPN ein großes Netz mit zwei Standorten

Wenn wir zwei Standorte haben und ein großes Netz haben wollen, ist das mit openVPN auch kein Problem. Es ist auch nicht so kompliziert wie man denkt.

Auf jeden Fall brauchen wir eine Bridge zwischen Netzwerkkarte und dem TAP-Adapter auf der Serverseite als auch auf der Clientseite.

Auf der Serverseite haben wir openSuSE 13.2 und auf der Clientseite haben wir Windows 7

 

Zuerst installieren wir noch bridge-utils

 

Es wird angenommen, dass die Zertifikate erstellt sind und einige Einstellungen auf dem Client als auch auf dem Server schon gemacht sind. Wenn nicht dann bitte zuerst hier lesen.

 

Unsere openVPN Netz ist: 10.0.0.0/24
Domäne für beide Netze: monoplan.lokal
Weitere Daten finden wir auf der oberen Zeichnung.
Es wird angenommen, dass Port 1194 auf der Firewall geöffnet ist, eine NAT wurde erstellt, bedeutet die Anfragen von außen die an Port 1194 ankommen an den Server 192.168.1.144 weitergeleitet werden. Bei Fritzbox heißt das "Neue Freigabe erstellen".

 

In dem Ordner /etc/openvpn auf dem Server wird eine Datei mit dem Namen bridge erstellt. Hier der Inhalt dieser Datei. Danach ändern wir noch die Rechte der Datei, damit wir das Script ausführen können.

#!/bin/sh

# Ein Bridge Interface wird definiert
br="br0"

# Liste der TAP-Schnittstellen für die Überbrückung,
# z.B. tap="tap0 tap1 tap2".
tap="tap0"
# Physische Netzwerkkarte wird für die Bridge definiert.
# mit ifconfig in shell sieht man die Netzwerkkartennamen
eth="eth0"
eth_ip="192.168.1.144"
eth_netmask="255.255.255.0"
eth_broadcast="192.168.1.255"
eth_gateway="192.168.1.200"

case "$1" in
start)
    for t in $tap; do
       openvpn --mktun --dev $t
    done
    brctl addbr $br
    brctl addif $br $eth
    for t in $tap; do
       brctl addif $br $t
    done
    for t in $tap; do
       ifconfig $t 0.0.0.0 promisc up
    done
    sleep 3
    ifconfig $eth 0.0.0.0 promisc up
    ifconfig $br $eth_ip netmask $eth_netmask broadcast $eth_broadcast
    route add default gw $eth_gateway
    ;;
stop)
    ifconfig $br down
    brctl delbr $br
    for t in $tap; do
       openvpn --rmtun --dev $t
    done
    ifconfig $eth $eth_ip netmask $eth_netmask broadcast $eth_broadcast
    route add default gw $eth_gateway
    ;;
*)
    echo "Verwende: bridge {start|stop}"
    exit 1
    ;;
esac
exit 0

LinuxOpenVPN: # chmod 755 /etc/openvpn/bridge

In dem Ordner /etc/openvpn auf dem Server wird eine Datei mit dem Namen server.conf erstellt. Hier der Inhalt dieser Datei.

 

mode server
tls-server
local 192.168.1.144

port 1194
proto udp
dev tap0
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem
remote-cert-tls client
# dem openvpn Client wird eine IP aus dem Bereich .91 bis 95 zugewiesen
server-bridge 192.168.1.144 255.255.255.0 192.168.1.90 192.168.1.95

push "dhcp-option DNS 192.168.1.150"
push "dhcp-option DOMAIN monoplan.lokal"
push "dhcp-option WINS 192.168.1.150"

client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
status /etc/openvpn/openvpn-status.log
log-append /etc/openvpn/openvpn.log
verb 3

 

Zuletzt schalten wir die Brücke ein und starten den openVPN Service

 

LinuxOpenVPN: # /etc/openvpn/bridge start
LinuxOpenVPN: # systemctl start openvpn@server.service

Installation und Konfiguration des LTE Routers und des openVPN Computer auf der Clientseite.

 

Auf dem Standort 2 verwenden wir in unserem Fall einen LTE Router. Beim Einschalten verbindet sich der Router mit dem Internet. Hier die Konfiguration des Routers.
Eins sollte man beachten. Im Netz 2 dürfen sich keine IP-Adressen befinden die schon im Netz1 vorhanden sind.
  •    LTE Router bekommt die IP 192.168.1.100
  •    Maske: 255.255.255.0
  •    DHCP ausschalten
  •    Der openvpn-PC ist per Kabel mit dem LTE Router verbunden.
  •    keine Route in LTE eintragen.

 

PC auf der Clientseite (Netz 2) vorbereiten.
  • openVPN - Software installieren. Nach der Installation haben wir zwei Netzwerkkarten im system z.B. LAN-Verbindung und LAN-Verbindung 2. Die können auch anderes heißen. die LAN-Verbindung 2 (TAP-Win32 Adapter V9) können wir z.B. umbenennen auf tap0 müssen wir aber nicht.
  • Wir erstellen eine Brücke: Markieren Sie beide Netzwerkkarten und dann mit der rechte Maustaste und dann auf "Verbindung überbrücken". Jetzt entsteht noch zusätzlich eine Netzwerkkarte. Die können wir z.B. umbenennen auf br0 müssen wir aber nicht.
  • Der Netzwerkkarte br0 wird die IP-Adressen vergeben, DNS und Gateway wird die IP-Adresse des LTE Routers zugewiesen.
          IP: 192.168.1.101
          Mask: 255.255.255.0
          Gateway: 192.168.1.100
          DNS: 192.168.1.100
Wir starten Windows Explorer und wechseln in den Ordner "C:\Program Files\openvpn", also in den Ordner in dem die openVPN Software installiert ist. Hier erstellen wir einen Ordner easy-rsa und darunter den Ordner keys.

 

In den Ordner "C:\Program Files\openvpn\easy-rsa\keys" kopieren wir die Zertifikate von Client1 (sehe unten die Config-datei) die wir zuvor auf dem Server erstellt haben und das ca.crt Zertifikat. Der Transport der Zertifikate sollte auf sicherem Wege stattfinden.
In dem Ordner "C:\Program Files\openvpn\config" erstellen wir eine Datei z.B. Client1.ovpn Hier der Inhalt der Datei. Einige Daten müssen Sie selbstverständlich anpassen.

 

port 1194
proto udp
remote IP-Adresse-Der-Firewall
dev tap0
ca "C:\\Program Files\\openvpn\\easy-rsa\\keys\\ca.crt"
cert "C:\\Program Files\\openvpn\\easy-rsa\\keys\\client1.crt"
key "C:\\Program Files\\openvpn\\easy-rsa\\keys\\client1.key"
client
remote-cert-tls server
comp-lzo
persist-key
persist-tun
verb 3

 

Jetzt starten wir den openVPN-GUI als Administrator. Mit der rechte Maustaste klicken wir auf das entsprechende Icon in der Task Leiste und klicken auf verbinden.

 

Jetzt können wir andere PCs an den Router anschließen. Die PCs bekommen jetzt die IP-Adressen, DNS und Gateway vom Firmennetz.

 

Bemerkung: Der openvpn-Client selbst ist nicht vom Firmennetz ereichbar. Andere Geräte in der Zweitstelle sind von Firmennetz erreichbar und umgekehrt.