Arme-Leute-VPN

Das unter der GPL lizenzierte Sshuttle eignet sich perfekt für den Einsatz in öffentlichen Netzen. Es nutzt einen bisher einzigartigen Ansatz, um on-the-fly ein SSH-VPN zwischen unixoiden (Linux, BSD, Mac OS X) Betriebssystemen aufzubauen und den kompletten Client-Datenverkehr zu tunneln.

Das relativ neue Sshuttle findet sich noch nicht in den Paketquellen aller Distributionen, falls vorhanden, fällt die Version – aktuell war zu Redaktionsschluss Sshuttle 0.60 – oft recht altbacken aus. So hat Debian "Sid" etwa Sshuttle 0.54-1 an Bord [2], das aktuelle Ubuntu 11.10 "Oneiric" enthält Version 0.53-0.1. Zum Ausprobieren der aktuellen Version 0.60 kommen Sie daher um ein manuelles Installieren nicht herum. Das stellt aber kein wirkliches Problem dar, weil es sich bei Sshuttle um ein in Python programmiertes Kommandozeilenwerkzeug handelt.

Sshuttle baut das VPN von der Client-Seite herauf, wofür es dort Root-Rechte benötigt. Außerdem muss Iptables installiert sein, das praktisch alle gängigen Distributionen ohnehin bei der Installation einrichten. Die aktuelle Sshuttle-Version ist unter Github [1] gehostet und steht wahlweise als ZIP-Archiv oder Tarball zum Download bereit. Da es sich um ein Python-Programm handelt, genügt das einfache Auspacken des Pakets (oder das Auschecken von Github), und Sie können Sshuttle sofort einsetzen. Ein typischer Aufruf sieht so aus:

$ sudo ./sshuttle --dns -vv -r User@Ziel-Host 0/0

Hier tunnelt -dns zusätzlich den DNS-Verkehr, -vv erhöht die Gesprächigkeit der Anwendung, und das Kürzel 0/0 stellt einen Alias für das IP-Binding 0.0.0.0/0 dar, das alle lokalen Adressen einbezieht. Sie könnten Sshuttle über Verändern dieser Maske problemlos auch auf ein bestimmtes Subnetz oder eine spezifische IP hängen. Das war's schon.

Abbildung 1: Sshuttle erweist sich im Bedarfsfall sehr nützlich, da es auf den Bordmitteln eines Linux-Rechners aufbaut.

Ab jetzt tunnelt Sshuttle den gesamten Traffic, inklusive DNS-Anfragen. Wer den vergleichbaren Aufwand mit SSH-Portforwarding kennt, kann möglicherweise im ersten Moment kaum glauben, dass Sshuttle funktioniert. Dass es das aber tut, verifizieren Sie leicht, indem Sie die externe IP prüfen – etwa durch Besuch eine entsprechenden Test-Webseite [3]. Bei aktiviertem Tunnel sollte hier die IP-Adresse des Servers oder entfernten Hosts erscheinen, andernfalls die des lokalen Routers.

Abbildung 2: Je eine Verbindung vom lokalen Host ohne Proxy und via Sshuttle mit Proxy auf einen entfernten Server.

Quick and Dirty

Möchten Sie wissen, wie Sshuttle das zuwege bringt, dann sollten Sie sich die ausführliche Dokumentation [4] des Tools näher ansehen. Im Prinzip verbiegt Sshuttle via Iptables die Routing-Tabellen auf dem Client, kopiert sich selbst auf den Server und fungiert sozusagen als transparenter Proxy.

Dass dieses Verfahren ähnlich wie ein doppelter SSH-Tunnel nicht ganz astrein ist und insbesondere in Unternehmen ein Sicherheitsproblem darstellt, liegt auf der Hand – muss Sie aber als Privatnutzer nicht stören. Beabsichtigen Sie allerdings, auf diese Weise von zuhause auf Ihren Arbeitsplatzrechner in der Firma zuzugreifen, sollten Sie tunlichst zuvor Ihren zuständigen Admin informieren (sofern Sie der nicht selbst sind), weil das Funktionsprinzip von Sshuttle mit hoher Wahrscheinlichkeit gegen Firmenrichtlinien verstößt.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Beinahe-VPN per SSH
    Der in OpenSSH eingebaute SOCKS-Proxy und das auf SSH aufbauende Python-Programm Sshuttle springen in die Bresche zwischen einfachem Port-Forwarding und einem vollwertigen VPN.
Kommentare

Infos zur Publikation

LU 01/2015: E-Books im Griff

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 2 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...
ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.