Config ServerNET Bridging

Aus OpenVPN Wiki

Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Einleitung

Diese Konfiguration hat den Vorteil dass die Clients sich so verhalten als wären sie im lokalen Netzwerk eingebunden - sie bekommen alle NetBIOS Broadcasts etc., können problemlos auf Netzwerkfreigaben zugreifen, an LAN-Spielen teilnehmen oder sich auf nur lokal zugängliche Dienste einloggen (z.B. auf das Webinterface des Routers oder auf IP-Range begrenzte VNC-Server).

Installation von OpenVPN auf dem Server und den Clients

siehe Install_Windows bzw. Install_Linux

Laden des TUN-Drivers (nur Linux)

Der Kernel muss ein entsprechendes Modul bereitstellen (tun.o bzw. tun.ko) oder TUN/TAP-Support einkompiliert haben. Danach kann man es als root einfach mit folgendem Befehl laden:

root@erde# modprobe tun

Falls der TUN/TAP Driver nicht gefunden wird (vor allem bei virtuellen Maschinen der Fall) muss man das Device von Hand erstellen:

mkdir -p /dev/net
mknod /dev/net/tun c 10 200
chmod 600 /dev/net/tun

Hinweis: Der TUN Driver stellt auch das TAP Interface bereit.

Erzeugen von Zertifikaten/Schlüsseln

Windows: siehe C:\Program Files\OpenVPN\easy-rsa\readme.txt Die in dieser Datei beschriebenen Schritte ausführen um die Schlüssel für Server und Client(s) zu erzeugen. Folgende Dateien auf den Server kopieren:

  • ca.crt
  • server.crt
  • server.key
  • dh1024.pem

Folgende Dateien auf den Client kopieren:

  • ca.crt
  • client.crt
  • client.key

Linux/Unix: Easy-rsa befindet sich im Tarball des Sourcecodes bzw. kann unter http://openvpn.net/easyrsa.html heruntergeladen werden. Die Vorgehensweise ist analog zu Windows.

Öffnen des benötigten Ports der Firewall

Steht der Server hinter einer Firewall/einem Router so müssen dort der entsprechende Port auf den Server weitergeleitet werden. Der default-port von OpenVPN ist 1194/UDP.

Erstellen der Netzwerkbrücke auf dem Server

Windows XP: OpenVPN hat bereits einen virtuellen Netzwerkadapter erstellt. In den Netzwerkverbindungen die Detailansicht einschalten - eine Netzwerkverbindung sollte den Gerätenamen "TAP-Win32 Adapter V8" tragen - das ist der virtuelle OpenVPN Netzwerkadapter. Diese Netzwerkverbindung sowie die normale Netzwerkverbindung auswählen, rechtsklicken und "bridge connections" auswählen. Danach in den Eigenschaften der neuerstellten Netzwerkbrücke eine fixe IP zuweisen.

Linux/Unix: Am Ende der Anleitung auf http://openvpn.net/bridge.html befindet sich ein Bridge Start/Stopscript für Linux. Dieses muss angepasst und vor dem Start von OpenVPN ausgeführt werden.

Hinweis: Unter Windows 2000 und früher ist das Erstellen einer Netzwerkbrücke nicht möglich. Windows 2003 Server erlaubt nur in gewissen Versionen das Erstellen von Netzwerkbrücken. Unter Linux geht beim Ausführen des Scriptes in manchen Fällen die Standardroute zum Router verloren (und entsprechend die Internetverbindung), diese muss dann mit dem "route"-Befehl manuell ergänzt werden oder man schreibt das Script entsprechend um.

Tipp Windows 2000: Mit dem Programm "Ethernet Bridge" von http://www.ntkernel.com/ kann mann auch unter Windows 2000 (Server) eine Bridge bauen.

Anpassen der Konfigurationsdateien

Konfigurationsdatei für den/die Client(s):

client # entspricht den Direktiven: tls-client und pull

remote my-openvpn-server.dyndns.com 1194 # Hostname/externe IP des Servers/Routers, Port entsprechend anpassen
proto udp # Protokoll UDP, für TCP: proto tcp-client
dev tap # evtl. tap0 unter Linux

# Hier die Pfade anpassen um auf die erstellten Keys zu verweisen
ca ca.crt
cert client.crt
key client.key
ns-cert-type server # Eine Sicherheitsmaßnahme

verb 3 # Zum Debugging erhöhen
mute 50 # Zum Debugging auskommentieren

Konfigurationsdatei für den OpenVPN-Server:

server-bridge 192.168.1.10 255.255.255.0 192.168.1.220 192.168.1.230 # Gateway des Netzwerks _ Subnetmask _ StartIP _ EndIP

port 1194 # Auf Port 1194 horchen
proto udp # Protokoll UDP, für TCP: proto tcp-server
dev tap # evtl. tap0 unter Linux

# Hier die Pfade anpassen um auf die erstellten Keys zu verweisen
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem

client-to-client # Daten von VPN-Client zu VPN-Client wird direkt in OpenVPN weitergeleitet

# float # Nur wenn Clients ihre IPs während der Verbindung wechseln

ping-timer-rem
keepalive 20 180 # Alle 20 Sekunden pingen. 3 Minuten Timeout fuer CLientverbindung

verb 3 # Zum Debugging erhöhen
mute 50 # Zum Debugging auskommentieren

Autostart auf dem Server einrichten, mit dem Client connecten

OpenVPN muss jetzt auf dem Server mit der server.ovpn Konfigurationsdatei gestartet werden:

Windows XP: Der OpenVPN Installer hat bereits einen Service angelegt der nur noch gestartet bzw. auf "Automatic" gesetzt werden muss (Admin-Privileges erforderlich).

Danach können die Clients sich connecten indem sie OpenVPN mit der client.ovpn Konfigurationsdatei starten. Für Windows-Clients existiert ein komfortables GUI unter [[1]].

Persönliche Werkzeuge