OpenVPN-Server Konfiguration

Dieser Artikel beschreibt die Konfiguration von OpenVPN auf einem Linux-System (z. B. Debian) mittels statischen Schlüsseln.

Die Methode ein VPN mit statischen Schlüsseln aufzubauen ist einfach zu realisieren und zu Verwalten. Es gibt aber auch ein paar Nachteile gegenüber dem dynamischen Authentifizierungsverfahren.

  • Eingeschränkte Skalierbarkeit.
  • Der Secret Key liegt im Klartext auf jedem VPN-Client.
  • Ein sicherer Weg zum Schlüsselaustausch zwischen Server und Client muss gegeben sein.

Voraussetzungen

  • Linux-Basisinstallation (die Installation von Debian wird in diesem Artikel beschrieben).
  • Das Paket openvpn inklusive aller Abhängigkeiten

Schlüssel erzeugen

Der statische Schlüssel kann mit folgendem Befehl erzeugt werden:

$ openvpn --genkey --secret static.key

Diese Schlüssel müssen dann auf den Server und auf den/die Clients kopiert werden.

Server Config-File

Die Konfigurationsdate am Server kann in etwa dieses Aussehen haben:

dev tun
ifconfig 10.0.0.1 10.0.0.2
secret static.key

Es wird empfohlen die Konfigurationdatei in das Verzeichnis /etc/openvpn zu kopieren und mit dem Hostnamen des Clients zu benennen. Alle Konfigurationsateien in diesem Verzeichnis werden ausgeführt, wenn OpenVPN als Dienst gestartet wird.

Client Config-File

remote <server-address>
dev tun
ifconfig 10.0.0.2 10.0.0.1
secret static.key

Firewall anpassen

Um die Verbindzung zum VPN-Server herstellen zu können muss am Firewall das UDP Port 1194 freigeschaltet werden.

Weiters muss am lokalen Firewall das neu erstellte Interface TUN0 für externe Verbindungen zugelassen sein.

Test

Zum testen der Verbindung kann der OpenVPN-Tunnel manuell, mit dem folgenden Befehl gestartet werden:

$ openvpn <config-file-name>

Dieser Befehl muss am Server und am Client eingegeben werden (in dieser Reihenfolge).

Durch ein ping auf die jeweils andere IP-Nummer des VPN-Tunnels kann dann überprüft werden ob die Kommunikation funktioniert.

Falls das Netzwerkdevice nicht erstellt werden kann, muss das Paket udev installiert werden!

Zugriff auf das Serverseitige Subnetz

In diesem Beispiel wird davon ausgegangen, dass das Serversubnetz die Netzwerkadresse 192.168.20.0 und die Subnetzmaske 255.255.255.0 hat.

Um mit dem Client auf das Subnetz in dem sich der Server Befindet zugreifen zu können, muss der folgende Eintrag in die Konfigurationsdatei am Client hinzugefügt werden:

route 192.168.20.0 255.255.255.0

Falls der OpenVPN-Server nicht gleichzeitig der Gateway des Netzwerks ist, muss am Gateway eine Route definiert werden, welche die IP-Adresse 10.0.0.2 an den OpenVPN-Server weiterleitet.

Damit die Weiterleitung in das andere Subnetz funktioniert muss am Server das IP-Forwarding aktivieren aktiviert sein!

OpenVPN als Dienst ausführen

Um OpenVPN als Dienst starten zu können muss in den Konfigurationsdateien am Server und/oder am Client folgendes in die Konfigurationsdatei hinzugefügt werden:

user nobody
group nobody
daemon

Der Dienst wird mit dem Befehl

$ /etc/init.d/openvpn start

gestartet. Dadurch werden alle .conf-Dateien im Verzeichnis /etc/openvpn automatisch ausgeführt und die jeweilige VPN-Verbindung wird aufgebaut.

Siehe Auch

Diskussion

Geben Sie Ihren Kommentar ein
 
netzwerk/openvpn/openvpn-server_konfiguration.txt · Zuletzt geändert: 2010/03/01 22:03 (Externe Bearbeitung)
Nach oben
openSUSE.org

Beachten sie unbedingt den Haftungsausschluss!

Recent changes RSS feed openSUSE.org Powered by PHP do yourself a favour and use a real browser - get firefox!! Driven by DokuWiki

Sofern nicht anders gekennzeichnet, steht der Inhalt dieser Seite unter dem Schutz der Creative Commons Licence:
Creative Commons License Namensnennung, Keine kommerzielle Nutzung, Weitergabe unter gleichen Bedingungen, v 3.0