Warum IPSEC |
|---|
Es gibt mehrere Methoden, gesicherte verschlüsselte Verbindungen über das
Trägermedium Internet zu führen. Damit erreiche ich ein so genanntes VPN (virtual
privat network), welches mir ermöglicht, auf an sich hinter meiner firewall
stehende Server von außen zuzugreifen. Diese Zugriffe müssen, wenn über Internet
erfolgend, mittels verschlüsselten Datenpaketen erfolgen.
Dazu gibt es mehrere Protokolle:
Zu den wichtigsten Protokollen zum Aufbau eines VPN-Tunnels gehören, neben IPsec
und PPTP, auch die Protokolle L2F und L2TP.
Alle Protokolle haben verschiedene Vor- und Nachteile, die nachfolgend
gegenübergestellt und zusammengefasst werden.
Es sei aber bereits an dieser Stelle gesagt: unter
Sicherheitsgesichtspunkten gibt es keine Alternative zu IPsec!
PPTP |
|---|
PPTP (Point To Point Tunneling Protocol) wurde ursprünglich von Microsoft und
Ascend entwickelt und ist aufgrund seiner Integration in Windows weit
verbreitet. Es handelt sich hierbei um eine Erweiterung des Point to Point
Protokolls (PPP). PPTP ermöglicht nicht nur die Übertragung von IP-Paketen,
sondern auch von IPX- und NetBEUI-Paketen. Die einzelnen Pakete werden in eine
modifizierte Form des Generic Routing Encapsulation Protocol Version 2 (GREv2)
verpackt und zum Network Access Server (NAS) des InternetServiceProviders
transportiert.
Je Kommunikationspaar kann nur EIN Tunnel aufgebaut werden. Zur Authentisierung
dient PAP/ CHAP; eine Authentisierung der Tunnelenden ist jedoch nicht
vorgesehen. In PPTP sind keine Key-Management-Protokolle implementiert. Die
Datenverschlüsselung erfolgt nach dem RC4-Verfahren mit Schlüssellängen von 40,
56 oder 128 Bit. Eine Paket-Integritätsprüfung ist !!! nicht !!! implementiert.
PPTP ist nicht standardisiert, der Internet Draft (draft-ietf-pppext-pptp-00)
ist Anfang 1997 "expired".
In die Schlagzeilen ist PPTP geraten, da verschiedene Berichte über
Implementierungsdefizite bei der Schlüsselverwaltung veröffentlich wurden!
Das "je Kommunikationspaar kann nur ein Tunnel aufgebaut werden" bringt die
Einschränkung mit sich, dass ein zweiter Tunnelaufbau nicht erfolgreich ist,
(bei MS VPN mit einer entsprechenden Fehlermeldung) und führt - falls mehrere
solche Tunnel benötigt werden - dazu, dass die Benutzer sich zeitlich abstimmen
müssen. Nicht ganz im Sinne einer "user friendly application" !
L2F |
|---|
L2F steht für Layer 2 Forwarding und wurde von Cisco, Nortel und Shiva
entwickelt. Die sog. Multiplex-ID L2F-Header erlaubt den gleichzeitigen Betrieb
mehrerer Tunnel. Die und Client-ID erlaubt mehrere parallele Verbindungen
innerhalb jeden Tunnels. Unterstützt werden Punkt-zu-Punkt und
Punkt-zu-Mehrpunkt-Verbindungen. Neben PPP kann man mit L2F auch SLIP tunneln.
Die Authentisierung erfolgt über ein Challenge-Handshake-Verfahren.
L2F kann über unterschiedliche Paketnetze transportiert werden wie z.B. X.25,
Frame Relay oder ATM. Es erfolgt keine Verschlüsselung der Daten! Der
zugehörige RFC 2341 hat den Stand "historic"!
L2TP |
|---|
L2TP vereint die Vorteile von PPTP und L2F. Eine Tunnel-ID im L2TP-Header
erlaubt den Betrieb multipler Tunnels. NAT (Network Address Translation) wird
unterstützt. Der L2TP-Tunnel wird aufgebaut zwischen den NAS des ISP und dem
VPN-Knoten (beim Anwender). L2TP erlaubt eine Authentisierung auf der Basis von
CHAP/ PAP. Es ist keine Verschlüsselung definiert. L2TP ist ein Proposed
Standard nach IETF (RFC 2661). Im "Proposed Standard" RFC 3193 ("Securing L2TP
using IPsec") ist eine Methode beschrieben, um L2TP und IPsec zu kombinieren und
L2TP dadurch mit der fehlenden Verschlüsselung zu versehen.
IPSEC |
|---|
IPsec steht für IP Security Protocol. Als Erweiterung/ Ergänzungvon/ zu IP ist
es ein Layer-3-Tunneling-Protokoll.
IPsec war ursprünglich für IP Version 6 geplant (RFCs 1825, 1826, 1827, 1828 und
1829), ist heute jedoch (auch) vollständig für IPv4 standardisiert. Es erlaubt
(derzeit) jedoch nur die Verschlüsselung von IP-Paketen, überträgt keine
Multicasts und unterstützt - bewusst! - nur statisches Routing.
IPsec wird in den RFCs 2401 bis 2412 beschrieben, die die o.g. RFCs abgelöst
haben. Alle RFCs haben den Status Proposed Standard.
Wesentliche Ziele im "Pflichtenheft" der IPsec-Definition waren, dass sich
Die Datenintegrität und die Authentisierung des Datenursprungs wird mittels
des Authentication Headers (AH) erreicht. Der AH-Header schützt die Daten und
einige Header-Teile des zu übertragenden IP-Pakets vor Verfälschung. Dazu wird
mittels bekannter Hash-Funktionen wie MD-5 (Message Digest) oder SHA-1 (Secure
Hashing Algorithmus) eine Prüfsumme aus der IP-Payload gebildet und im AH-Header
an den Empfänger übertragen. Nur wenn dieser dieselbe Prüfsumme aus dem
empfangenen Paket errechnet ist sichergestellt, dass die Nachricht während der
Übertragung nicht verändert wurde und auch nur von dem Absender stammen kann, da
nur dieser den geheimen Schlüssel für das gewählte Authentisierungsverfahren
kennt.
Während es für SHA-1 Berichte über (theoretische) Security-Schwächen gibt,
gilt MD-5 als in jeder Beziehung unangreifbar. Dieser Vorteil wird jedoch - wie
so oft - über eine deutlich geringere Geschwindigkeit erkauft.
Die Verschlüsselung der Daten (Encapsulating Security Payload - ESP) erfolgt mit
einem beliebigen Schlüssel (z.B. Triple-DES, AES). Da IPsec einerseits ein
Höchstmaß an Sicherheit bietet und andererseits der Bedarf, neben IP auch andere
Protokolle (wie IPX, NetBUI) zu tunneln abnimmt, wird es die o.g.
Layer-2-Protokolle langfristig als VPN-Standard-Protokoll ablösen.
Unter diesen Aspekten kann die Empfehlung für VPN-Tunneling nur für IPSEC
ausgesprochen werden, wobei jedoch berücksichtigt werden muss, dass diese Art
der Verschlüsselung mehr Hardware Ressourcen erfordert, als die anderen
Methoden.