Openvpn Grundlagen
Zur Navigation springen
Zur Suche springen
Basics
- OpenVPN ist eine freie Software zum Aufbau eines Virtuellen Privaten Netzwerkes (VPN) über eine verschlüsselte TLS-Verbindung.
- Zur Verschlüsselung kann OpenSSL oder embed TLS benutzt werden.
- OpenVPN verwendet wahlweise UDP oder TCP zum Transport.
- OpenVPN steht unter der GNU GPL und unterstützt sehr viele Betriebssysteme
Funktionsweise
- Kommunikationspartner können einzelne Computer sein oder ein Netzwerk von Computern.
- Typische Anwendungsfälle sind die Verbindung einzelner Außendienstmitarbeiter in das Netzwerk ihrer Firma.
- In jedem Fall baut einer der beiden Kommunikationsteilnehmer die Verbindung auf (Client), und der andere wartet auf eingehende Verbindungen (Server).
- Dazu muss der Server unter einer festen IP-Adresse oder unter einem festen Hostnamen erreichbar sein.
- Dies kann für Computer, die aufgrund von Einwählverbindungen mit ständig wechselnden IP-Adressen konfrontiert sind, auch mit Hilfe eines dynamischen DNS-Dienstes erfolgen.
- Befindet sich vor dem VPN-Gateway ein Paketfilter oder Proxy oder wird eine Adressumsetzung (NAT) durchgeführt-
- So müssen diese Dienste so konfiguriert werden, dass ein in der Konfiguration von OpenVPN zu vergebender UDP- oder TCP-Port durchgelassen wird und zwar für Input, Forward und Output.
- Eine OpenVPN-Serverinstanz kann dabei nur für einen Port und ein Protokoll konfiguriert werden.
- Ein gemischter Betrieb, in welcher eine Clientverbindung wahlweise auf TCP oder UDP ermöglicht ist, ist nur mit zwei parallel laufenden Serverinstanzen realisierbar.
- OpenVPN zog nach der Beta-Phase der Version 2.0 vom damals standardmäßig verwendeten Port 5000 auf den für OpenVPN registrierten Port 1194 um.
- Der konkret verwendete Port kann beliebig in der Konfiguration verändert werden.
Erkennbarkeit
- OpenVPN-Verbindungen können trivial mittels einer Deep Packet Inspection an den bekannten Header-Daten der übertragenen Pakete erkannt werden
- Es kann durch die Deep Packet Inspection nicht der Inhalt im verschlüsselten Tunnel ermittelt werden
- Aber es kann beispielsweise mit der Erkennung die Verbindung blockiert, die Kommunikationspartner ermittelt und die Daten dazu protokolliert werden.
Betriebsmodi
Routing
- Der Routing-Modus ist die einfachste Form der sicheren Kommunikation und stellt einen verschlüsselten Tunnel zwischen zwei Gegenstellen her.
- Über den ausschließlich IP-Pakete geleitet werden.
- Dazu wird jeder Gegenstelle eine virtuelle IP-Adresse eines fiktiven Subnetzes zugewiesen (z. B. 10.8.0.1 und 10.8.0.2).
- Der Zugriff auf das dahinter liegende Netzwerk ist grundsätzlich nicht direkt möglich (Point-to-Point Verbindung).
- Um die dortigen Adressen zu erreichen, muss die Gegenstelle die Datenpakete mittels IP-Forwarding und Einträgen in der Routingtabelle weitervermitteln
- Man könnte auch auf Network Address Translation zurückgreifen.
Bridging
- Im Gegensatz zum Routing ist im Bridging-Modus ein vollständiges Tunneln von Ethernet-Frames (Layer 2) möglich.
- Es erlaubt somit beispielsweise auch den Einsatz von alternativen Protokollen wie IPX und das Senden von Wake-On-LAN-Paketen.
- Ein Client integriert sich völlig transparent in das Einwahlnetz und erhält eine IP-Adresse des dortigen Subnetzes zugewiesen.
- Er ist teil der Broadcast Domain.
Authentifizierung
- Pre-shared Key
- Zertifikate
- Benutzer+Passwort