OpenVPN unter Ubuntu 8.04
OpenVPN unter Ubuntu 8.04
Vorwort
Folgende Beschreibung wurde mit einem Ubuntu 8.04 mit Kernel 2.6.24-19 und dem Gnome-Networkmanager getestet. Unter 8.10 funktioniert die Anleitung nicht, da der Network-Manager Veränderungen aufweist. Es wird empfohlen, auf KVpnc auszuweichen.
Der OpenVPN-Server läuft derzeit im Testbetrieb.
Vorbereitung
Zuerst sind die Konfigurationsdateien (im Prinzip nur der Schlüssel und die Zertifikate) von der OpenVPN-Seite zu laden und auf dem Rechner abzuspeichern.
Unter Fedora 9 ist SELinux standardmäßig aktiviert. Dadurch ist ein Zugriff des openvpn-Service auf die Userverzeichnisse nicht möglich.
Entweder man packt den Schlüssel und das Zertifikat nach /etc/openvpn oder aktiviert im SELinux Management unter "Boolean" die Ausnahme "openvpn".
Als weitere Voraussetzung muß das Paket network-manager-openvpn auf dem System installiert sein.
Konfiguration
Den Network-Manager im Panel anklicken und VPN-Connections -> Configure VPN... auswählen.
Ein Fenster geht auf:
Add anklicken.
Mit Forward weiter.
OpenVPN Client einstellen und Forward klicken. In dem dann erscheinenden Fenster die Angaben enstprechend übernehmen. Unter Username ist der eigene Benutzername einzugeben.
Benutzer, die einen Account der Universitätsverwaltung haben, müssen an Ihren Account die Erweiterung @uv anhängen. Accountinhaber aus der Physik verwenden bitte die Erweiterung @physik an ihrem Account, um sich zu identifizieren. Nutzer mit einem Account am Institut für Mathematik verwenden bitte die Erweiterung @mathematik bei der Anmeldung. Nutzer, die einen Account am Institut für Informatik haben, müssen mit @informatik die Zugehörigkeit zur Einrichtung kennzeichnen. Nutzer mit CMS-Account müssen zur Anmeldung am OpenVPN-Server an ihren Account keine Erweiterung anhängen.
Der Speicherort des Zertifikats ist individuell einzustellen.
Zur Karte Optional wechseln und folgende Einstellungen vornehmen. Auch hier ist der Speicherort der Datei entsprechend anzupassen.
Mit Forward vorwärts. Es erscheint eine Zusammenfassung der Einstellungen:
Mit Apply anwenden. Unter VPN Connections sollte nun eine neue Verbindung erscheinen:
Mit Close das Fenster schließen.
Verbindung herstellen
Den Gnome-Networkmanager im Panel anklicken und VPN-Connections -> HU-OpenVPN anklicken.
Es wird nach dem eigenen Password gefragt:
Sobald die Verbindung erfolgreich aufgebaut wurde, sieht der Network-Manager so aus:
Probleme
Routing-Problem
Durch einen Bug im Gnome-NetworkManager erscheint der OpenVPN-Tunnel unter Ubuntu 8.04 unbenutzbar, da die Default-Route falsch gesetzt wird. Dieses Phänomen tritt unregelmässig auf.In der Kommandozeile den Befehl netstat -rn absetzen. Eine Ausgabe folgt:
Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 193.174.167.74 172.24.6.1 255.255.255.255 UGH 0 0 0 wlan0 172.24.6.0 0.0.0.0 255.255.255.255 U 0 0 0 wlan0 0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 tap0Die dritte Zeile (Iface tap0) ist falsch. Durch die Eingabe von sudo route add default gw 141.20.212.1 läßt sich das Problem lösen. Die Routing-Tabelle sieht anschliessend so aus:
Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 193.174.167.74 172.24.6.1 255.255.255.255 UGH 0 0 0 wlan0 172.24.6.0 0.0.0.0 255.255.255.255 U 0 0 0 wlan0 0.0.0.0 141.20.212.1 0.0.0.0 UG 0 0 0 tap0 0.0.0.0 0.0.0.0 0.0.0.0 U 0 0 0 tap0Ein Ping (z.B. ping www.cms.hu-berlin.de) sollte den erfolgreich ausgeführten Workaround bestätigen.
DNS-Problem
Unter Umständen sind die Einträge in der Datei /etc/resolv.conf nach dem Login am OpenVPN-Gateway unrichtig, da die DNS-Einstellungen für das HU-Netz nicht übernommen wurden. Es werden dann weiterhin die DNS-Server verwendet, die vor dem Aufbau des VPN-Tunnels benutzt wurden und diese antworten dann nicht (aufgrund der HU-Adresse) oder sind unerreichbar. Abhilfe schafft im Ubuntu die Installation des Pakets resolvconf, welches die Übernahme der DNS-Server vom OpenVPN-Server in die Datei /etc/resolv.conf realisiert (sudo apt-get install resolvconf).
