OpenVPN zwei Subnetze verbinden

Im Beispiel zwei werden zwei Subnetze miteinander verbunden. Jeder PC oder Server aus dem Subnetz 1 soll jeden PC oder Server im Subnetz 2 erreichen und jeder PC oder Server aus dem Subnetz 2 soll jeden PC oder Server im Subnetz1 erreichen.

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.

 

Es sollten zwei unterschiedliche Netze miteinander kommunizieren,
 Netz1 (Firmennetz): 192.168.0.0/24
 Netz2 (Niederlassung): 192.168.5.0/24

 

Unsere openVPN Netz ist: 10.0.0.0/24
Domäne für beide Netze: monoplan.lokal
Es könnten auch unterschiedliche Domänen sein.
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".

Wir wollen allerdings auch andere Server (von Netz 2) in der Firma erreichen, deshalb müssen wir noch eine statische Route an der Firewall - Netz 1 setzen. Im Kurzform würde das so lauten: Alle Pakete die das Netz 10.0.0.0/24 erreichen sollen, bitte an den Server: 192.168.1.144 schicken. Im Klartext, wir erstellen eine Route. Mit diese statische Route können wir allerdings nur von dem openVPN Client alle Server erreichen. Damit auch andere Clients von Netz 2 die Server und Client in Netz 1 erreichen, müssen wir noch eine statische Route in der Firmen Firewall setzen. Im Kurzform würde das so lauten. Alle Pakete die das Netz 192.168.5.0/24 erreichen sollen, bitte an den Server: 192.168.1.144 schicken. Wenn die Route gesetzt ist, kann man alle Server und Clients in Netz1 von Netz 2 erreichen, aber noch nicht in andere Richtung.
In dem Ordner /etc/openvpn auf dem Server wird eine Datei mit dem Namen server.conf erstellt. Hier der Inhalt dieser Datei.

 

port 1194
proto udp
dev tun
server 10.0.0.0 255.255.255.0
push "dhcp-option DNS 192.168.1.150"
# DNS Server
push "dhcp-option WINS 192.168.1.150"
# WINS Server
dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
client-config-dir /etc/openvpn/ccd   # erweiterte Konfigurationen für die einzelnen Clients
keepalive 10 60
route 192.168.5.0 255.255.255.0   # clientnetz + netmask
push "route 192.168.0.0 255.255.255.0"   # servernetz + netmask

// in dem Ordner ccd werden Dateien erstellt für die erweiterte Konfiguration
// für einzelne Clients. z.B. wird ein Zertifikat für den cleint1 erstellt,
// dann kann man hier eine Datei client1 für die erweiterte Konfiguration erstellen
// und so weiter.

Inhalt der Datei /etc/openvpn/ccd/client1 wäre z.B.
iroute 192.168.5.0 255.255.255.0 # clientnetz + netmask

Jetzt starten wir noch den openvpn Server. Unter openSuSE 13.2 ist das folgender Befehl

openVPNzl:~ # systemctl start openvpn@server.service

 

 
Die Konfiguration des Servers ist damit beendet.
Jetzt werden Geräte und openVPN Client im Netz 2 bearbeitet und eingestellt.
Wir haben z.B. einen LTE WAN Router mit eine LTE - Karte.
Das Gerät verbindet sich automatisch mit dem Internet.
Ein DHCP ist aktiviert.
IP-Adresse von dem Gerät ist 192.168.5.1 Maske 255.255.255.0

 

Ein OpenVPN-Client Rechner (Windows)
IP - 192.168.5.50 Maske: 255.255.255.0
DNS: 192.168.5.1
Gateway: 192.168.5.1

Weitere Client (Windows oder Linux).
Wenn Manuelle Einstellung auf den Clients dann können wir wie folgt die Clients konfigurieren.

       IP: 192.168.5.x
       Maske: 255.255.255.0
       DNS: 192.168.0.150 # Das ist der DNS von Netz 1
       Gateway: 192.168.5.50 (das ist der openvpn Client)

Bei diesen Einstellungen brauchen wir keine statische Route auf dem LTE Router definieren.

Sollten die Clients die IP-Adressen von dem DHCP -Server (LTE Router) bekommen, dann müssen wir noch zusätzlich eine statische Router auf dem LTE Router definieren.
Die DHCP-Clients bekommen dann automatisch die folgende IP-Adressen zugewiesen

       IP-Adresse: 192.168.5.x
       DNS: 192.168.5.1
       Gateway: 192.168.5.1
       
In diesem Zustand sollten die Clients das Netz 1 erreichen, können aber nicht, weil hier ein andere Gateway zugewiesen ist, deshalb muss man auf dem LTE WAN Router eine statische Router eintragen und aktivieren.

Die Route lautet wie folgt
alles was zu 192.168.0.0/24 Netz geht, wird dem Gateway 192.168.5.50 zugewiesen.
192.168.5.50 ist die IP von Client auf dem openVPN - Client.

Danach sind alle Rechner im Netz 1 erreichbar. Damit auch allen PCs im Netz 192.168.5.0/24 die Server im Netz 1 mit Namen erreichen, müssen wir noch einen DNS Server von Netz 1 definieren. Im Router Netz2 machen wir noch ein DNS Eintrag. Hier kann man als DNS1 die IP: Adresse von DNS-Server im Netz 1 eintragen, auf de zweiter stellen die IP-adresse von DNS des Providers.


Installation und Konfiguration des Clients

 

Zuerst müssen wir auf dem PC openVPN Client installieren, am besten mit GUI. Gehen Sie auf die www.openvpn.net Webseite und laden Sie das entsprechende Programm runter.
Installieren Sie das Programm. Danach öffnen Sie Windows Explorer und wechseln Sie in den Ordner
C:\Program Files\OpenVPN\config. Hier erstellen Sie bitte eine Datei mit dem Namen z.B. Client1.ovpn und fügen Sie den Inhalt wie unten ein.

 

 
Die IP-Adresse muss man selbstverständlich anpassen. Sollte die Firewall in Ihrer Firma keine Feste IP-Adresse haben, dann sollten Sie sich mit DynDNS befassen. Für den Client1 wird die Datei z.B. Client1.ovpn heißen, für den Client 2 wird die Datei Client2.ovpn erstellt und so weiter, oder nach Ihre Wahl.

 

port 1194
proto udp
remote IP-Adresse-Der-Firmen-Firewall
dev tun
client
# "ich bin der Client"
ca "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\ca.crt"
key "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\client1.key"
cert "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\client1.crt"

Erstellen Sie bitte in OpenVPN Pfad einen Ordner C:\Program Files\OpenVPN\easy-rsa und
C:\Program Files\OpenVPN\easy-rsa\keys. Übertragen Sie bitte auf sicherem Wege von Server zu Client folgende Dateien: ca.crt, client1.crt und client1.key und kopieren Sie die in den Ordner
C:\Program Files\OpenVPN\easy-rsa\keys, so wie in der Client1.ovpn Datei steht.
Jetzt starten wir auf dem Client den OpenVPN GUI. Wir sollte auf jeden Fall das Programm "Als Administrator ausführen" (Rechte Maustaste). Nach dem Start erscheint in der Taskleiste ein Icon mit einem Schlosszeichen. Jetzt nur noch mit der rechte Maustaste auf das Icon und auf "Verbinden". Wenn die Verbindung stattfindet, wird das Icon grün.
 
Wenn alles richtet gemacht ist, haben wir jetzt VPN Verbindung.