OpenVPN mit Pre-shared Key
OpenVPN ist eine Software zum Einrichten eines Virtual Private Networks (VPN) über eine verschlüsselte TLS-Verbindung. Dieser Artikel zeigt, wie ein einfaches VPN unter Ubuntu 12.04 LTS mit einem statischen Schlüssel (Pre-shared Key) eingerichtet wird.
OpenVPN installieren
OpenVPN wird auf der Kommandozeile mit folgendem Kommando installiert:
sudo apt-get install openvpn
Einfaches Setup
Das folgende einfache Setup ermöglicht eine VPN-Verbindung von einem VPN Client zu einem VPN Server. Die Konfiguration liegt dabei in einer Datei im Verzeichnis /etc/openvpn. Der Schlüssel (static.key) wird mit folgendem Kommando erzeugt:
openvpn --genkey --secret static.key
Der Default Port von OpenVPN ist 1194/UDP. OpenVPN empfiehlt UDP als Transport-Protokoll. Falls es damit Probleme geben sollte, kann in der Konfiguration unterhalb das Kommentar-Zeichen "#" bei der Server- und Client-Konfiguration entfernt werden. Dadurch läuft die Kommunikation über TCP.
VPN Server
/etc/openvpn/vpn-server.conf:
dev tun ifconfig 10.9.0.1 10.9.0.2 secret static.key #proto tcp-server keepalive 10 120
VPN Client
/etc/openvpn/client.conf:
remote 203.0.113.5 dev tun ifconfig 10.9.0.2 10.9.0.1 secret static.key route 192.168.255.0 255.255.255.0 #proto tcp-client keepalive 10 120
Anwendungsbeispiel 2-Node Cluster
Das folgende Beispiel zeigt, wie von einem VPN Client zwei VPN Verbindungen zu zwei Nodes eines HA Cluster mit Linux Container basierend auf Heartbeat, Pacemaker, DRBD und LXC aufgebaut werden kann. Die zusätzlichen Routen ermöglichen dabei den Zugriff auf die IPMI Interfaces über die beiden VPNs. Die folgende Grafik zeigt dabei schematisch den Netzwerk-Aufbau:
Node1
/etc/openvpn/vpn-server.conf:
dev tun ifconfig 10.8.0.1 10.8.0.2 secret static.key #proto tcp-server keepalive 10 120
Node2
/etc/openvpn/vpn-server.conf:
dev tun ifconfig 10.9.0.1 10.9.0.2 secret static.key #proto tcp-server keepalive 10 120
Client mit Zugriff auf beide Nodes
/etc/openvpn/node1.conf:
remote 203.0.113.4 dev tun ifconfig 10.8.0.2 10.8.0.1 secret static.key route 192.168.255.5 255.255.255.255 #proto tcp-client keepalive 10 120
/etc/openvpn/node2.conf:
remote 203.0.113.5 dev tun ifconfig 10.9.0.2 10.9.0.1 secret static.key route 192.168.255.4 255.255.255.255 #proto tcp-client keepalive 10 120
Weitere Informationen
- OpenVPN (de.wikipedia.org)
- Static Key Mini-HOWTO (openvpn.net)
Autor: Werner Fischer Werner Fischer arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 - ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg - heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.
|