OpenVPN

Aus Hochschule Darmstadt - Fachschaft Informatik Wiki
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

[Bearbeiten] OpenVPN

Seit Juli 2008 gibt es die Möglichkeit sich in das studentische Netzwerk per OpenVPN einzuwählen. Dies klappt über das WLAN, LAN aber auch von Extern. Das gibt die Möglichkeit auf Dienste mit IP-Adressenbeschränkung auch von zu Hause zuzugreifen (wie beispielsweise DBIS oder IPTV). Als kleinen Bonus bekommt jeder Benutzer für die Dauer der Verbindung eine eigene öffentliche IP-Adresse zugeordnet. Dadurch werden auch keine Verbindungsdaten gespeichert, da eine 1-zu-1 Zuordnung zum Benutzer vorgenommen werden kann. Nach dem Einwählen erhalten Clients natürlich auch eine IPv6-Adresse.

[Bearbeiten] Einrichtung

  • Host: vpn.fbihome.de
  • Protokoll: tcp oder udp
  • Port: 443 bei tcp oder 1194 bei udp
  • Type: tap (Bridge)
  • Zugangsdaten: Benutzer+Passwort (Studaccount oder USERV-Account)
  • Kompression: lzo
  • SSL/TLS Certificates: deutsche-telekom-root-ca-2.pem

[Bearbeiten] Einrichtung unter Windows

Fertige Konfiguration für Windows (für Linux einfach "Downgrade privileges after initialization" in der Datei aktivieren).

  1. OpenVPN Downloaden & installieren: http://openvpn.net/index.php/open-source/downloads.html
  2. fbihome.ovpn & deutsche-telekom-root-ca-2.pem (Rechtsklick > Speichern unter) im gleichen Verzeichnis, in der sich die openvpn.exe befindet ablegen
  3. In der Datei fbihome.ovpn muss der Pfad zur Datei cacert.crt eingetragen werden. Eingeleitet wird die Zeile mit 'ca'. Die Pfade bitte in UNIX-Schreibweise eintragen. Bsp: 'ca ../etc/cacert.crt'. Im Falle, dass sich die beiden Dateien im selben Verzeichnis befinden genügt die Zeile 'ca cacert.crt'
  4. Verknüpfung oder .bat erstellen(PFAD:\OpenVPN\bin\OpenVPN.exe --config PFAD:\OpenVPN\config\fbihome.ovpn). Man kann auch eine DOS-Box mit Administrator-Privilegien öffnen und VPN mittels 'openvpn.exe --config fbihome.ovpn' starten.
  5. userv-username ('istxxxxxx') und Passwort eingeben, DOS-Box während der kompletten Sitzung nicht schließen.
  6. OpenVPN.exe muss mit Administrator Privilegien gestarten werden!
  • Eventuell müsst ihr die fbihome.ovpn erweitern mit den Optionen:
    • mssfix
    • ip-win32 dynamic
    • route-method exe
    • tap-sleep 2
    • route-delay 2


[Bearbeiten] GUI für openvpn

Wer gern die kalte Wahrheit hinter bunten Knöpfen versteckt, findet unter http://openvpn.se/ eine grafische Oberfläche für openvpn. Hinweis: Richtig lesen und nicht nur das Sprachpaket runterladen!

Die openvpn-gui.exe muss dann übrigens auch als "Administrator" gestartet werden ;)

[Bearbeiten] Anmerkungen

Durch Open-VPN wird ein neuer LAN-Adapter erstellt. Dieser darf bei dem Verwenden von OpenVPN nicht deaktiviert sein.

Bei Windows 7 gab es mehrfach Probleme mit OpenVPN Version 2.0.19. Abhilfe schaffen unter anderem die Versionen 2.0.15 oder 2.0.9.

[Bearbeiten] Einrichtung unter Mac OS

Für Apple-User ist die Einrichtung wie immer spielend einfach. Um OpenVPN nutzen zu können, braucht man das Programm Tunnelblick. Dieses installiert man wie gewohnt per Drag&Drop. Der Installationsassistent legt nach dem ersten Start eine Beispielkonfiguration an. Diese kann man aber getrost ignorieren. Es reicht, wenn man das oben verlinkte Zertifikat und die Datei fbihome.ovpn herunter lädt und beide in das Verzeichnis ~/Library/openvpn/ (~ steht für User-Home) verschiebt. Danach startet man das Programm erneut und kann sich zum VPN verbinden.

Falls es bei dir Anmeldung zu einer Fehlermeldung kommt, sollte man bei der Anmeldung den Benutzernamen ohne Suffixe (@users.fbihome.de) verwenden.

Darüber hinaus kann es zu ständigen reconnects kommen. Im Log steht dann etwas von *Tunnelblick leasewatch: A network configuration change was detected. Abhilfe schafft das entfernen des Hakens "Verbindung überwachen" neben der Dropdownliste unten.

[Bearbeiten] Einrichtung unter Linux (Allgemein)

Über den Paketmanager openvpn installieren. Anschließend die fbihome.ovpn und deutsche-telekom-root-ca-2.pem in das Verzeichnis "/etc/openvpn" speichern.

Öffne nun die fbihome.ovpn in einem Editor und ändert den Pfad des Zertifikats auf /etc/openvpn/deutsche-telekom-root-ca-2.pem. Man findet den Pfad für das Zertifikat unter #SSL/TLS parms. Darunter sollte stehen:

ca deutsche-telekom-root-ca-2.pem

Und muss abgeändert werden zu:

ca /etc/openvpn/deutsche-telekom-root-ca-2.pem

Nun mit dem Befehl

openvpn --config /etc/openvpn/fbihome.ovpn

OpenVPN starten. (ggf. root Rechte erforderlich)

[Bearbeiten] Einrichtung Debian/Ubuntu mit Networkmanager

Um sich unter Debian/Ubuntu per Networkmanager mit dem VPN zu verbinden müssen die entsprechenden Pakete installiert sein. Das sind zum einen Pakete für das Openvpn selbst und zudem Erweiterungen für den Networkmanager. Die Pakete werden mit diesem Befehl installiert:

sudo apt-get install network-manager-openvpn-gnome

Danach muss man eine neue VPN-Verbindung erstellen. Dazu geht man auf das Symbol des Networkmanagers in der Taskleiste und wählt VPN -> VPN konfigurieren.


Networkm VPN.png

Dann klickt man auf die Schaltfläche Hinzufügen. Dann öffnet sich ein Fenster und man wählt entsprechend dem Bild openvpn aus.

Networkm Verbindungstyp.png

Dann auf Erzeugen klicken.

Dann öffnet sich ein Fenster, in dem man die eigentliche Verbindung einrichtet. Beim Verbindungsname wählt man einen geeigneten Namen für die Verbindung. Beim Gateway trägt man vpn.fbihome.de ein. Unter dem Abschnitt Legitimierung -> Art: Passwort einstellen. Unter Benutzername und Password trägt man seinen st-Account mit zugehörigem Passwort ein. Das Zertifikat lädt man sich herunter([1]) und wählt es dann aus.

Das sollte jetzt so aussehen

VPN Verbindung Erstellen1.png

Jetzt auf die Schaltfläche Erweitert klicken und entsprechend dem Bild die Häckchen setzen

VPN Verbindung Erstellen2.png

Dann auf OK klicken und danach auf Speichern. Um jetzt die VPN-Verbindung nutzen zu können auf das Networkmanager Symbol in der Taskleiste klicken und unter VPN-Verbindungen die neu erstellte Verbindung auswählen.

[Bearbeiten] DNS

Wer den DNS-Server der Fachschaft verwenden will, muss noch etwas nachlegen. Im Fall von (K)ubuntu muss noch das Paket "resolvconf" installiert werden.

apt-get install resolvconf

Danach wird die fbihome.ovpn noch um folgende zwei Zeilen ergänzt:

up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf

Es kann passieren, dass OpenVPN die Initialisierung nach Ergänzung dieser Zeilen mit folgender Fehlermeldung abbricht:

/etc/openvpn/update-resolv-conf tap0 1500 1576 172.x.x.x 255.255.255.224 init
openvpn_execve: external program may not be called due to setting of --script-security level
script failed: external program fork failed
Exiting

Dies passiert, weil der Parameter script-security standardmäßig den Wert 1 hat und damit nur vordefinierte Programme wie z.B. ifconfig, ip, route oder netsh aufgerufen werden dürfen. Ein Workaround ist diesen Parameter auf den Wert 2 zu setzen und damit den Aufruf aller(!) benutzerdefinierten Scripte zu erlauben. Dazu wird folgende Zeile in der Konfiguration ergänzt:

script-security 2

[Bearbeiten] Datenbanken und EBooks der Bib

Die Datenbanken und die EBooks, welche aus dem Hochschulnetz zugänglich sind können über OpenVPN auch von unterwegs abgefragt werden.

Bei der Seite des Springerverlags ist zu beachten, das zuerst die Cookies gelöscht werden müssen um sich korrekt auf der Seite authentifizieren zu können.

[Bearbeiten] Umgehen der Default Route

Wer nicht gerne seinen ganzen restlichen Internetverkehr über das Hochschulnetz laufen lassen will, kann das Ersetzen der Default-Route verhindern, dazu einfach folgende Befehle unten in die OpenVPN-Konfigurationsdatei schreiben:

# Keine Routen vom Server übernehmen
route-nopull

# VPN-Server weiterhin über altes Gateway routen
route remote_host 255.255.255.255 net_gateway

# H-DA-IP's über VPN routen:
route 141.100.0.0 255.255.0.0 vpn_gateway

Wenn man dann trotzdem die externen Angebote von z. B. der Bibliothek wie springerlink, etc. benutzen will, die Nutzer per IP-Adresse authentifizieren, muss man die entsprechenden IP's auch über das VPN Routen.

Beispiele für Springerlink, wiso, und die DIN-Normen gibt es hier (wieder unten in die Konfigurationsdatei anfügen):

# Erlaubt uns bei route auch eine DNS-Adresse anstelle einer IP zu schreiben
allow-pull-fqdn

route springerlink.com 255.255.255.255 vpn_gateway
route www.wiso-net.de 255.255.255.255 vpn_gateway

# Din-Normen
route www.perinorm.com 255.255.255.255 vpn_gateway
route secure.beuth.de 255.255.255.255 vpn_gateway

Werdet ihr von weiteren Seiten ausgesperrt, einfach nach dem obigen Schema anfügen, OpenVPN neustarten, Cookies löschen, und nochmals versuchen. Funktionierende Routen dürfen hier auch gerne angefügt werden!

[Bearbeiten] Automatisches als Service starten und anmelden

ACHTUNG: Diese Methode ist sehr unsicher, da man das Passwort im Klartext abspeichern muss! Um OpenVPN als Service starten und anmelden zu lassen muss man eine Textdatei mit Loginname und Passwort erstellen und im Ordner config abspeichern:

PW.txt

username
passwort

Danach muss man in der fbihome.config folgendes einfügen/verändern (Pfad anpassen):

# Ask for username/password.
auth-user-pass "C:\\Program Files (x86)\\OpenVPN\\config\\pw.txt"

Um OpenVPN jetzt noch automatisch starten zu lassen muss man beim OpenVPNService in den Windows-Diensten den Starttyp von Manuell auf Automatisch stellen.

Tipp: Falls es zu Problemen kommt, kann man im Ordner "C:\Program Files (x86)\OpenVPN\log" die Fehler auslesen.

Meine Werkzeuge