VPN

Ein Virtual Private Network (VPN) (dt.: virtuelles privates Netzwerk) ist ein Computernetz, das zum Transport privater Daten ein öffentliches Netz (zum Beispiel das Internet) nutzt. Es ermöglicht somit eine sichere Übertragung über ein unsicheres Netzwerk. Teilnehmer eines VPN können Daten wie in einem internen LAN austauschen. Die einzelnen Teilnehmer selbst müssen hierzu nicht direkt verbunden sein. Die Verbindung über das öffentliche Netz wird üblicherweise verschlüsselt. Der Begriff „Private“ impliziert dies jedoch nicht, wie vielfach angenommen. Eine Verbindung der Netze wird über einen Tunnel ermöglicht. Meist wird der Tunnel dabei gesichert, aber auch ein ungesicherter Klartexttunnel ist ein VPN.

IP-VPNs nutzen das Internet zum Transport von IP-Paketen unabhängig vom Übertragungsnetz, was im Gegensatz zum direkten Remote-Zugriff auf ein internes Netz (direkte Einwahl beispielsweise über ISDN, GSM, …) wesentlich flexibler und kostengünstiger ist.

Einsatzmöglichkeiten

Einige Beispiele für sinnvolle Anwendungen von VPN:

  • Verbindung von verschiedenen Standorten eines Unternehmens
  • Anbindung von Außendienstmitarbeitern an das interne Firmennetz
  • Erweiterung von Firmennetzen auf Zulieferer und Geschäftspartner (E-Commerce)
  • sichere Datenübertragung für Online-Banking Kunden zum Bankrechner

Vorteile

  • geringere Unterhaltskosten als angemietete Leitungen;
  • einfachere Administration;
  • beliebige Erweiterbarkeit unter Erhaltung vorhandener Teilnetzstrukturen;
  • eigene Modem-Bänke werden unnötig;
  • vorhandene Internet-Hardware kann verwendet werden, um ein VPN aufzubauen.

IP-Tunneling über das Internet beruht darauf, dass dem zu transportierenden Paket ein neuer IP-Kopf vorangestellt wird (IP in IP).

Dieser Kopf wird in einem Server des LANs oder des ISPs erzeugt, der den Ausgangspunkt des Tunnels bildet. Der Kopf enthält als Quelladres-se die Adresse dieses Rechners und als Zieladresse einen Server, der den Endpunkt des Tun-nels bildet und das transportierte Paket wieder entpackt, also den Tunnel-Kopf entfernt. Dieses Paket wird dann wie gewohnt im Ziel-LAN seinem Empfänger zugestellt.

Wie schütze ich mein VPN?

Durch die Verwendung von Passwörtern, öffentlichen Schlüsseln oder durch ein digitales Zertifikat kann die Authentifizierung der VPN-Endpunkte gewährleistet werden. Aus Sicherheitsgründen ist es notwendig, auf den VPN-Gateways den Datenverkehr zu untersuchen und Paketfilter einzusetzen. Sonst wäre es sehr leicht möglich, Computerwürmer, Trojaner oder andere Schadsoftware in das private Netzwerk einzuschleusen.

VPN-Gateways sollten deshalb immer in Verbindung mit einer Firewall eingesetzt werden. In besseren Firewall findet man daher schon gebrauchsfertige VPN-Lösungen.

Site-to-Site / Punkt-zu-Punkt

Zwei lokale Netze werden durch VPN-Gateways verbunden. Die Gateways bauen untereinander eine VPN-Verbindung auf, die meist permanent bestehen bleibt. Andere Rechner aus dem lokalen Netz können nun den VPN-Gateway verwenden, um Daten in das andere Netz zu senden. So lassen sich zum Beispiel zwei weit entfernte Standorte einer Firma verbinden (Site-to-Site-VPN).

End-to-Site

VPNs werden oft verwendet, um Mitarbeitern außerhalb einer Organisation oder eines Unternehmens Zugriff auf das interne Netz zu geben. Dabei baut der Computer des Mitarbeiters eine VPN-Verbindung zu dem ihm bekannten VPN-Gateway des Unternehmens auf. Über diese Verbindung ist es dem Mitarbeiter nun möglich, so zu arbeiten, als ob er im lokalen Netz der Firma wäre (Remote-Access-VPN). Dieses Verfahren wird auch verwendet, um WLAN und andere Funkstrecken zu sichern (End-to-Site-VPN).

End-to-End

Die einfachste Methode ist ein Tunnel zwischen zwei einzelnen Computern. Dies wird praktisch aber kaum genutzt. Nur Organisationen mit einem extrem hohen Sicherheitsbedarf verschlüsseln so die gesamte Kommunikation in ihren Netzen. Dies wird teilweise auch als „Host-to-Host“ VPN bezeichnet.

FreeS/WAN, sowie dessen Nachfolger Openswan und strongSwan, bietet noch die Möglichkeit der so genannten „opportunistic encryption“: Es wird zu jedem Rechner, mit dem der eigene Computer Daten austauscht, ein Tunnel aufgebaut, wenn dieser einen Schlüssel per DNS bereitstellt.

IPSec

IPSec: weit verbreitet, Konfiguration sehr komplex; Eignung: Site-to-Site-VPNs als auch End-to-Site-VPNs.

Siehe auch: StrongSwan (IPSec-Implementierung für Linux).

L2TP mit IPSec

L2TP ist erstmal grundsätzlich unverschlüsselt, es muss mit anderer Methode (bei Windows standardmäßig mit IPSec) kombiniert werden. Es löst PPTP weitgehend ab, wird aber auch zunehmend von reinem IPSec verdrängt.

OpenVPN

PPTP

Das Point-to-Point Tunneling Protocol (PPTP) tunnelt PPP über IP (in GRE-Pakete verpackt), insbesondere bei Windows benutzt. Es wird dort vorrangig mit MPPE abgesichert, MS-CHAPv2 ist mit moderaten Kosten knackbar (200$) und sollte daher nicht verwendet werden.

Linux enthält userspace-Programm bzw. seit Kernel 2.6.37 direkt dort, nutzbar mit ACCEL-PPTP.

andere

  • L2TP: unverschlüsselt, muss mit anderer Methode (bei Windows standardmäßig mit IPSec) kombiniert werden, löst PPTP weitgehend ab, wird aber zunehmend von reinem IPSec verdrängt.
  • Crypto IP Encapsulation (CIPE): Tunneling, UDP over IP, leichte Installation
  • Hamachi: proprietär, Clients für Windows, Linux, MacOS X
  • SSL VPN oder TLS/SSL: Hauptsächlich für End-to-Site-VPNs (für Site-to-Site- als auch End-to-Site-VPN benutzbar)
  • VoVPN: Verfahren (kein eigenes Protokoll) zur Einbettung von VoIP-Streams in das VPN-Protokoll

Linux

Windows