Open Source im professionellen Einsatz
Linux-Magazin 08/2005

Anleitung: Firewalls untertunneln mit OpenVPN

Daten-Unterführung

Firewalls sind oft so vermauert, dass gerade noch der alltäglichen Surf-Betrieb möglich ist. Ein IRC- oder Streaming-Server findet keinen Weg mehr - es sei denn, OpenVPN untergräbt die Firewall.

513

Firewalls sind meist so konfiguriert, dass alles verboten ist, was nicht unbedingt für die tägliche Arbeit nötig ist. Selbst kleine Dienste wie die eigene Webcam am Schreibtisch oder ein kleiner IRC-Server lassen sich durch die Restriktionen nicht mehr betreiben. Hier hilft nur OpenVPN [1] mit einem privaten Tunnel unter der Firewall hindurch, dessen Inhalt zudem verborgen bleibt.

Firewall untergraben

OpenVPN braucht keine Root-Privilegien, um einen Tunnel aufzubauen, wenn das Programm Zugriff auf die virtuellen TUN/TAP-Devices hat, läuft es auch im Userspace. Im einfachsten Fall genügt ein Aufruf mit einigen Parametern, um ein VPN einzurichten. Die einzige erforderliche Datei ist der gemeinsame Schlüssel, den der Client per »openvpn --genkey --secret secret.key« anlegt und den der Admin dann auf den Server kopiert. Der Artikel aus [2] beschreibt die interne Arbeitsweise von OpenVPN und das erforderliche Routing und die Firewall-Regeln für den Tunnel.

Zum Tunneln von TCP/IP ist ein verbindungsloses Protokoll wie UDP am besten geeignet: Es vermeidet, dass die Timeouts der OpenVPN- sowie der gekapselten TCP-Verbindung gleichzeitig ablaufen, was schlimmstenfalls zu einer ganzen Lawine an Retry-Paketen führt. Firewalls und Router in Unternehmen oder Internetcafés verbieten aber meist, dass Clients UDP-Pakete aus dem Internet empfangen. Die einzige Alternative ist daher, auf TCP auszuweichen. Damit kann jedoch nur noch der Client den Aufbau des VPN anstoßen,

Zwei gekürzte Skripte für den Server und den Client sind in den Listings 1 und 2 abgedruckt (online auf [3]). OpenVPN kommt ohne Konfigurationsdateien aus, wenn die Kommandozeilen-Parameter alle für den Tunnel benötigten Informationen enthalten. Optionen, die der jeweilige Benutzer von Fall zu Fall ändern muss, sind in den Listings 1 und 2 jeweils am Anfang aufgeführt.

Der Server kommt mit vergleichsweise wenigen Angaben aus, OpenVPN benötigt lediglich die IP-Adressen der VPN-Schnittstellen auf dem Server (»LOCALIP«) und dem Client (»REMOTEIP«), das Tunnel-Device sowie die Portnummer und die Datei mit dem Schlüssel. Die Variable »MAXRATE« begrenzt die Transferrate in Senderichtung.

Traffic Shaping

Selbst auf gut angebundenen Servern kann Traffic Shaping sinnvoll sein, wenn es darum geht, den Tunnel möglichst unauffällig im allgemeinen Datenverkehr des Firmennetzes zu verbergen. Sein wichtigster Einsatzzweck liegt aber bei Heimnetzwerken, die per DSL angebunden sind. Da der Upstream deutlich geringer ist als der Downstream eines DSL-Clients, lässt sich die Internetverbindung abseits des Tunnels kaum noch benutzen. Der Autor verwendet das in Listing 1 angegebene Limit von 16 KByte/s für seine DSL-Verbindung mit maximal 256 KBaud Upstream - so bleibt mindestens die Hälfte der Bandbreite für andere Dienste wie Apache oder den normalen Surf-Betrieb frei.

Der OpenVPN-Aufruf in den Zeilen 10 bis 15 bedient sich der eingangs definierten Variablen. Wichtig sind insbesondere die Parameter »--daemon«, »--proto tcp-server« und »--persist-tun«. Mit »--daemon« startet OpenVPN als Daemon, sodass das Serverskript weiterläuft. In Listing 1 ist dies nicht wesentlich, da die Schleife von Zeile 17 bis 21 lediglich verhindert, dass das Skript vor OpenVPN endet. Sollten jedoch die Firewall geöffnet, Masquerading eingeschaltet oder das Routing verändert werden müssen, geschieht dies am besten hinter Zeile 15. Die entsprechenden Befehle zum Aufräumen gehören ans Ende des Skripts.

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Gestapelte Röhren

    Dass OpenVPN zu mehr taugt als für simple virtuelle Netze, bestätigt ein trickreiches Szenario. Es wertet kurzerhand einen vermeintlich beschränkten WAP-Zugang zu einer kompletten IP-Anbindung auf, die sogar das Mitlauschen des Netzbetreibers verhindert.

  • Open Source Software hebelt Chinas "Great Firewall" aus

    Journalisten bei den Olympischen Spielen 2008 in Peking haben keinen vollen
    Internetzugang. Mit der GPL-Software Openvpn lassen sich solche Zensurmechanismen leicht umgehen.

  • Openvpn gegen Zensur

    Journalisten bei den Olympischen Spielen 2008 in Peking haben keinen vollen Internetzugang. Mit der GPL-Software Openvpn lassen sich solche Zensurmechanismen leicht umgehen.

  • Offener Tunnel

    Der einfach zu konfigurierende OpenVPN-Daemon nutzt das Tun-Device und arbeitet selbst im Userspace. Das UDP-Protokoll verwendet TLS-Verfahren zur Authentifizierung und kann damit als sehr sicher gelten.

  • Wehrhafte Mediziner

    Individuelle Firewallregeln und Authentifizierungsmechanismen für jeden VPN-User sind mit OpenVPN kein Problem. Admins der renommierten Berliner Universitätsklinik Charité zeigen wie.

comments powered by Disqus

Ausgabe 05/2017

Digitale Ausgabe: Preis € 7,62
(inkl. 19% MwSt.)

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.