Weitere ADMIN-Magazin Angebote

VPN-Verbindungen mit Linux-Clients einrichten

Nah und geheim

Routing

Manchmal ist es nötig, Pakete explizit über ein bestimmtes Netzwerk-Interface zu routen. Für viele Windows-Administratoren stellt das die größte Schwierigkeit dar, wenn Sie mit Linux-Clients arbeiten müssen. Explizites Routing ist besonders wichtig, wenn das entfernte Netz öffentliche IP-Adressen verwendet. Trotz einer VPN-Verbindung könnte das System versuchen, alle Pakete über das Internet zu routen statt über das VPN. Häufig genug erschöpfte sich die Fehlerbehebung bei einem VPN darin, ein paar Alternativrouten zur Default Route einzutragen. Das geht entweder mit dem gewohnten Befehl »route« . Alternativ lässt sich dazu auch die VPN-GUI heranziehen. Der Route-Befehl sieht beispielsweise so aus:

route add -net 13.163.97.23 netmask 255.↩
255.255.255 dev ppp0

Alternativ lässt sich das IP-Kommando verwenden:

ip route add 171.87.44.54/24

Heutzutage beherrschen VPN-Clients es auch immer besser, selber das Routing zu managen. Abbildung 1 zeigt die Einstellungen in KVpnc, Abbildung 2 eine ähnliche Konfiguration in KVpnc. Wie diese Bilder zeigen, werden Pakete, deren IP-Adresse und Netzwerkmaske auf das Muster zutreffen, nicht über die normale Netzwerkverbindung verschickt sondern über den VPN-Tunnel.

Abbildung 4: Verschlüsselungsoptionen in Pptpconfig.

Abbildung 4: Verschlüsselungsoptionen in Pptpconfig.

KVpnc (Abbildung 3), das von vielen Distributionen unterstützt wird, ist vermutlich der vielseitigste Client, denn er unterstützt L2TP, Ciscos freie und proprietäre Protokolle, OpenVPN und Microsoft-PPTP. Außerdem kann KVpnc Zertifikate importieren.

Abbildung 4: Verschlüsselungsoptionen in Pptpconfig.

Das altehrwürdige Tool »pptconfig« steht ebenfalls in vielen Distributionen zur Verfügung. Der Schlüssel zum Erfolg besteht darin, exakt dieselben Einstellungen zur Verschlüsselung vorzunehmen wie am Server. Oft es es so, dass man MPPE-Verschlüsselung obligatorisch machen und zustandsbehaftetes MPPE einstellen muss. Bei »pptconfig« führen die Einstellungen "Require Microsoft Point-to-Point Encryption" und "Refuse Stateless Encryption" zum Erfolg. Pptconfig kann automatisch Routen hinzufügen. Klicken Sie dazu auf den Routing-Reiter, wählen Sie dann »Client to LAN« und geben Sie die Routen zu den Systemen ein, die Sie über das VPN erreichen wollen.

Viele Linux-Benutzer bevorzugen den Networkmanager aus einem einfachen Grund. Er funktioniert meistens. Es gibt Plugins für verschiedene Protokolle, zum Beispiel OpenVPN, Microsofts PPTP und Ciscos L2TP, die sich normalerweise leicht über den Paketmanager installieren lassen. Abbildung 4 zeigt das Fenster mit den Einstellungen für ein Cisco-VPN auf einem Ubuntu-System.

Abbildung 4: Verschlüsselungsoptionen in Pptpconfig.

Networkmanager unterstützt sowohl Shared-Key- wie auch X.509-Zertifikatsbasierte Verschlüsselung. Damit er richtig funktioniert, muss man die Racoon-Daemon-Software installieren, die für den Schlüsselaustausch (Internet Key Exchange) zuständig ist und dabei entweder einen neuen Shared Key sowie signierte Zertifikate erzeugt oder anfordert. Außerdem bietet es die Option, gespeicherte Konfigurationdateien zu importieren.

IPsec im Kernel

Wenn Ihr System einen Kernel 2.6 verwendet, beherrscht es nativ das IPSec-Protokoll, aber wenn Sie KVpnc oder Vpnc verwenden, brauchen Sie den Racoon-Daemon trotzdem, der sich auch bei IPsec um den Schlüsselaustausch kümmert. Installieren Sie Racoon über den Paketmanager oder kompilieren Sie das Programm aus den Quellen selbst, siehe [4].

Um FreeS/WAN, den alten IPSec-Standard zu unterstützen, müssen Sie den Daemon »ipsec« installieren. Wenn Sie den passenden Daemon nicht haben, werden Sie keine VPN-Verbindung zustande bringen, weil der Schlüsselaustausch beim Aufbau des Tunnels nicht klappt.

Kommentare

Suche

ADMIN auf Twitter, Facebook, Xing

Auf Twitter folgen   

Unsere Partner:

hackerboard.deUnixboard