OpenVPN mit Pre-shared Key

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

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:

Example-vpn-for-cluster.png

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


Foto Werner Fischer.jpg

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.


Das könnte Sie auch interessieren

Dm-crypt Performance optimieren
LoRaWAN Transceiver in The Things Stack (TTS) einbinden
TCP Port 80 (http) Zugriff mit telnet überprüfen