Firewall mit reverse ssh Tunnel perforieren


Im „Linuxnetz“ las ich heute einen Artikel über das Erstellen von SSH Tunneln um z.B. sicher zu surfen. Mit der Secure Shell kann man unglaublich viele Dinge tun, darunter auch groben bis gröbsten Unfug. Ein schönes Beispiel dafür möchte ich hier kurz und nicht vollständig aufzeigen.

Ich bin Besitzer eines WDTV. Dabei handelt es sich um einen Multimedia Player um am TV Filme zu konsumieren. Das Gerät besitzt einen Netzwerkanschluss und kann auch Medien aus „Netzwerkfreigaben“ abspielen. Ich verwende eine modifizierte Firmware für das Gerät, auf der ein openssh Server läuft. Nun kann ich mich per SSH auf das Gerät einwählen und z.B. Kommandos wie Stop, Pause oder Vorspulen absetzen. Ein Freund von mir interessierte sich auch für ein solches Gerät und fragte mich, ob er es sich mal ausleihen könne.

Natürlich war das kein Problem für mich. Allerdings reizte es mich schon ein wenig das Gerät aus der Ferne zu steuern. Sprich der Freund schaut zuhause einen Film und ich drücke per ssh auf Pause oder Spule ein wenig vor. Von wegen der böse Geist in der Maschine und so 🙂

Um dies zu erreichen muß ich mit dem WDTV direkt kommunizieren können. Zuhause bewerkstellige ich das mit

ssh wdtv

Durch den Umzug zu meinem Kumpel kamen nun jedoch 2 Router und das Internet zwischen meine Maschine und das WDTV.

Die auf den 1. Blick einfachste Methode sieht so aus:

Um per SSH auf das WDTV zu kommen brauche ich die public IP und eine Portweiterleitung auf das WDTV bei meinem Kollegen. Nicht sehr elegant wie ich finde. Der Schabernack würde auch recht schnell auffliegen wenn ich ihn um beides bitten würde.

Meine Idee war das Pferd von hinten aufzuzäumen. Das WDTV erzeugt einen Tunnel auf meine Maschine über den ich die Kiste besuchen kann :).

In diesem Szenario wird meine IP benötigt und eine Weiterleitung von Port 22 auf meinen Rechner in meinem Netz sowie 2 Kommandos die beim Start des WDTV ausgeführt werden.

Das ist schon eher machbar.

Die Weiterleitung des Ports kann man in jeden 08/15 Router bequem konfigurieren.

Meine „public IP“ (wie lautet die korrekte Bezeichnung dafür?) finde ich immer mit einem netten Alias heraus:

ms@nostromo:~$ alias |grep wieist*

alias wieistmeineip=’curl icanhazip.com‘

Nun muß ich diese Adresse an einem Ort hinterlegen den das WDTV findet. Man könnte die IP in eine Textdatei schreiben und diese per FTP auf einen Gratis-Webspace kopieren. Wer einen Dienst wie DynDns nutzt hat es wohl noch leichter.

Das WDTV muß nachdem es gestartet ist diese IP abfragen und den Reverse Tunnel aufbauen:

ssh  -T  -R 2222:localhost:22 ms@$PUBIP

Wenn das Gerät an ist – und es ist immer an, auch wenn die Anzeige „Betrieb“  nicht leuchtet – kann ich eine SSH Verbindung zu dem Gerät aufbauen:

ssh ms@localhost -p 2222

Abends hatte ich per Fon sichergestellt, daß mein Kumpel einen Film schaut, 20 Minuten gewartet und dann ab und an mal auf Pause gedrückt, Vorgespult oder das Gerät komplett ausgeschaltet und so für Verwirrung gesorgt. Der Freund begann sogar im Internet nach der Ursache für solche Probleme zu recherchieren nachdem ich sagte, daß ich keine solchen Probleme hätte :). Nach 4 Tagen ließ ich den Unfug dann doch bleiben, da es doch Öde wurde.

Advertisements
Dieser Beitrag wurde unter linux, schlaue tipps für dein Leben, webkrams abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

2 Antworten zu Firewall mit reverse ssh Tunnel perforieren

  1. linuxnetzer schreibt:

    Interessante Variante… Ist ein schönes Lehrstück dafür, dass ne Haustür aus Stahl (sprich: Firewall) für die Katz ist, wenn man Kater Karlo aus freien Stücken ins Haus bittet…

  2. Pingback: SSH-Tunnel bauen und sicher surfen « LinuxNetzer Blog

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s