OpenVPN unter Linux
Das ZIH betreibt als Alternative für den Zugang zum Intranet der TU Dresden einen OpenVPN-Dienst. Die Anleitung erklärt die Installation und Einrichtung des OpenVPN-Clients unter Linux. Diese Anleitung ist primär für aktuell unterstützte Ubuntu/Debian Versionen mit Network Manager.
Inhaltsverzeichnis
Installation
Debian 10 (Buster)/Ubuntu 18.04 (Bionic Beaver) oder neuer
- Installieren Sie die OpenVPN-Software und das Network Manager Plugin.
sudo apt-get update
sudo apt-get install openvpn network-manager-openvpn - Installation der graphischen Komponenten:
- GNOME: Benutzer des Gnome-Desktops müssen noch eine weitere Komponente installieren, um Einstellungen über die Benutzeroberfläche vornehmen zu können:
sudo apt-get install network-manager-openvpn-gnome - KDE: Das KDE Plasma Network Manager Programm (plasma-nm) enthält bereits Unterstützung für OpenVPN.
- Andere Desktop-Umgebungen: Andere Desktop-Umgebungen greifen zumeist ebensfalls auf das Gnome-Benutzeroberfläche des NetworkManager zurück. Hier ist ebenfalls die zusätzliche Installation der entsprechenden Komponente erforderlich:
sudo apt-get install network-manager-openvpn-gnome
- GNOME: Benutzer des Gnome-Desktops müssen noch eine weitere Komponente installieren, um Einstellungen über die Benutzeroberfläche vornehmen zu können:
Debian 9 (Stretch)
Die in den regulären Paket-Quellen enthalten Versionen des OpenVPN-Programms und der zugehörigen Integrationen für den Network Manager ist zu alt. Jedoch sind in den sogenannten Backports neuere Versionen enthalten.
- Falls Sie Backports noch nicht nutzen, fügen Sie die folgende Zeile
deb http://deb.debian.org/debian stretch-backports main
der Datei /etc/apt/sources.list hinzu. - Installieren Sie OpenVPN-Software und das Network Manager Plugin aus den Backports:
sudo apt-get update
sudo apt-get install openvpn/stretch-backports network-manager-openvpn/stretch-backports - Installation der graphischen Komponeten:
- GNOME: Installieren Sie die Plugin-Komponente für den graphischen Editor aus den Backports:
sudo apt-get install network-manager-openvpn-gnome/stretch-backports - KDE: Leider liegt auch in den Backports keine ausreichend aktuelle Version von plasma-nm vor. Starten und Stoppen der VPN-Verbindung sollte jedoch trotzdem möglich sein. Importieren müssen Sie das OpenVPN-Profil jedoch auf der Kommandozeile wie unten beschrieben mittels nmcli. Alternativ können SIe auch die GNOME Network Manager Oberfläche unter KDE verwenden.
- GNOME: Installieren Sie die Plugin-Komponente für den graphischen Editor aus den Backports:
Debian 8 (Jessie)/Ubuntu 16.04 (Xenial Xerus) oder älter
Die in den offiziellen Paket-Quellen enthalten Versionen des OpenVPN-Programms und der zugehörigen Integrationen für den Network Manager ist zu alt. Zumindest aktuelle Versionen des OpenVPN-Programms können Sie jedoch als Paket vom OpenVPN-Projekt beziehen, auf die Network Manager Integration müssen Sie jedoch leider verzichten.
- Fügen Sie den Release Key des OpenVPN-Projekts Ihrer Paket-Verwaltung hinzu:
wget -O - https://build.openvpn.net/debian/openvpn/stable/pubkey.gpg | sudo apt-key add - - Fügen Sie das Repository des OpenVPN-Projekts Ihrer Paket-Verwaltung hinzu:
echo "deb http://build.openvpn.net/debian/openvpn/stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/openvpn.net.list - Installieren Sie das OpenVPN-Programm:
sudo apt-get update
sudo apt-get install openvpn
Andere Linux-Varianten
Der OpenVPN-Dienst funktioniert selbstverständlich auch mit anderen Linux Varianten, sofern dort ausreichend aktuelle Software zur Verfügung steht. Sie benötigen
- Version 2.4 oder neuer des OpenVPN-Programs.
- Version 1.8.10 oder neuer des Network Manager OpenVPN-Plugins für die Unterstützung durch Network Manager (optional).
- Für die grafische Benutzeroberfläche (optional):
- GNOME: Version 1.8.10 oder neuer des Network Manager OpenVPN GNOME Plugins.
- KDE: Version 5.11.95 oder neuer von KDE Plasma.
Import in Network Manager
Holen Sie sich ein geeignetes Profil vom OpenVPN-Profil-Generator im Self-Service-Portal und speichern Sie dieses ab. Merken Sie sich den Ordner, in dem die Datei liegt.
Profil importieren
Importieren sie dann die heruntergeladene Datei mit dem Kommando:
sudo nmcli connection import type openvpn file <pfad zur>/TUD.ovpn
Alternativ können Sie die Datei auch über die grafische Oberfläche des Network Manager importieren.
Nutzername setzen
Öffnen Sie danach den Netzwerk-Manager. Bei den VPN-Verbindungen sollte sich jetzt ein neuer Eintrag mit dem gleichen Namen wie die heruntergeladene Datei befinden. Sie können den Eintrag im Netzwerk-Manager bearbeiten, um ihren persönlichen Nutzernamen im Profil abzuspeichern. Als Nutzername wird ihr ZIH-Login ohne Erweiterungen wie @tu-dresden.de oder ähnlich verwendet. Wenn Sie die VPN-Verbindung starten werden sie ggf. nach Nutzername und Passwort gefragt. Nutzen Sie immer das ZIH-Login und das Passwort für das ZIH-Login.
Bekannte Fehler
Fehler: unsupported blob/xml element
Kommt beim Start des OpenVPN der Fehler:
"Error: failed to import "<pfad zur>/TUD.ovpn': configuration error: unsupported blob/xml element (line 32).",
ist Ihre Version des Network Managers zu alt und Sie können Network Manager nicht zum Verwalten von OpenVPN verwenden. Dies tritt unter anderen in Ubuntu 16.04 (Xenial Xerus) oder älter, Debian 8 (Jessie) oder älter und Debian 9 (Stretch) ohne Backports auf. Sie können dann jedoch OpenVPN immer noch manuell auf der Kommandozeile starten:
sudo openvpn --config <pfad zur>/TUD.ovpn
Fehlende IP-Adresse/Routen
Hat das OpenVPN-Interface (idR. tun0) trotz erfolgreichem Verbindungsaufbau keine IP-Adresse oder Routen, d.h. die folgende Ausgabe leer ist:
ip -4 route show dev tun0 table all
So prüfen Sie bitte, ob das Paket netscript-2.4 installiert sein sollte:
apt list --installed netscript-2.4
Wir raten von der Nutzung dieses Pakets ab und empfehlen stattdessen die Verwendung von ifupdown:
sudo apt install ifupdown