Dies ist eine alte Version des Dokuments!
OpenVPN ist eine openSource Software die es ermöglicht hochgradig verschlüsselte VPN-Verbindungen zu errichten. Die Konfiguration von openVPN ist zwar umfangreich jedoch relativ einfach. Man muss sowohl die Server- als auch die Client-Seite betrachten.
Unter Ubuntu installiert man openVPN ganz einfach mit apt-get install openvpn
.
Die Konfiguration folgt dem Beispiel von Ubuntuusers.de ( http://wiki.ubuntuusers.de/OpenVPN ) Damit eine Verschlüsselung überhaupt möglich ist müssen zunächst die SSL-Zertifikate mit zugehöriger CA erstellt werden.
Zu erst kopiert man sich die Beispielkonfiguration aus dem usr/share Verzeichnis
# sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/ # sudo gunzip /etc/openvpn/server.conf.gz # sudo cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0 /etc/openvpn/easy-rsa2
Um die CA zu erstellen navigiert man in /etc/openvpn/easy-rsa2 und legt zu erst einmal mit
sudo mkdir keys
das Verezeichnis für alle Keys an. In der Datei vars muss man nun die Einträge für die CA bearbeiten, man passt dazu die folgenden Zeilen nach seinen Anforderungen an:
export KEY_COUNTRY=DE export KEY_PROVINCE=NRW export KEY_CITY=Düsseldorf export KEY_ORG=”Vpntest” export KEY_EMAIL=”onlyspam@myhomepage.net”
Das Einlesen der vars geschieht mit
source ./vars
.
Danach mit
sudo -E ./clean-all
bereinigen und mit
sudo -E ./build-ca
die CA erstellen. Hier kann man sich mit Enter durchklicken. Beim Common Name (CN) sollte man den Namen seiner Organisation oder seiner Projektes angeben.
Zertifikat und Schlüssel für den Server werden mit
sudo -E ./build-key-server server
erstellt. Wenn alle Angaben in der varss richtig gesetzt sind kann man hier mit Enter durchklicken. Beim Common Name sollte man den Namen des Servers angeben. Ein Challenge Passwort sollte man nicht vergeben, da man dies sonst bei jedem Start des Servers eingeben muss, damit der openVPN Server gestartet werden kann.
Zum Abschluss muss noch zwei mal mit Y bestätigt werden.
Auch die Clients müssen Zertifikate besitzen um authentifiziert werden zu könnnen. Die Zertifikate für die Clients werden wie folgt erstellt:
sudo -E ./build-key <NameDesClients>
erstellt. Hierbei muss beim Common Name der Name des Clients eingegeben werden.
Es müssen dann noch die Diffie-Hellmann-Paramter erstellt werden, die geschieht wiederrum mit
sudo -E ./build-dh
und kann je nach Prozessor einige Zeit dauern.
Nun liegen alle benötigten Schlüssel und Zertifikate im Verzeichnis keys/.
Die gesamte Konfiguration des Servers erfolgt über die Datei /etc/openvpn/server.conf. Zunächst muss man die Speicherorte der Zertifikate und des Diffie-Hellmann-Files angepasst werden. Hierzu muss man in der Konfiguration die Zeilen die auf die entsprechenden Files verweisen wie folgt anpassen:
ca ./easy-rsa2/keys/ca.crt cert ./easy-rsa2/keys/server.crt key ./easy-rsa2/keys/server.key # This file should be kept secret dh ./easy-rsa2/keys/dh1024.pem
Das Zertifikat des Servers server.crt und der Key server.key heissen nur dann so, wenn auch der Common Name des Servers so gewählt wurde. Dies muss bei anderer Benennung entsprechend angepasst werden.
Will man, dass der Server bei mehreren Netzwerkkarten nur auf einer bestimmten Netzwerkkarte horcht muss man dies mittels IP-Adresse anpassen. Hierzu trägt man zu Beginn des Files folgende Zeile ein, wenn man beispielsweise möchte, dass der Server auf der Adresse 123.123.123.123 horcht:
local 123.123.123.123
. Jedes weitere Interface wird entsprechend hinzugefügt.
Natürlich will man einen VPN-Server nutzen um damit sicher auf ein privates Netzwerk zugreiffen zu können.
Bei Verwendung dieses Wikis erklären Sie sich mit dem Haftungsausschluss, Nutzungsbedingungen und der Datenschutzerklärung dieses Wikis einverstanden. Impressum.