Tag Archives: autossh

Reverse SSH (UMTS NAT)

Viele kennen das Problem. Internet ist tot und man kommt nicht an bestimmte Daten oder Informationen. Dabei würde ein Router, Modem oder Server reboot reichen. Klappt nur nicht weil eben der Ast auf dem man saß, abgesägt ist. Ich habe mir daher überlegt, nimm dafür deine UMTS Verbindung und lass sie nebenher dafür laufen. Nun leichter gesagt als getan. Viele UMTS Anbieter haben ein NAT Netz das erfolgreich verhindert dass sich Services an Ports binden können. Ergo würde man einen SSH Server von außen erst gar nicht erreichen.

Eigentlich total simpel, auf der Zielmaschine, also dem Host der von außen via UMTS erreichbar sein sollte:

apt-get install autossh
autossh -M 10203 -R 12345:localhost:22 USERNAME@REMOTESERVER -N &

Als erstes installieren wir damit “AutoSSH” welches den SSH Tunnel bei einer Trennung von UMTS automatisch wiederherstellt, dafür baut AutoSSH einen sog. ControllPort (10203) zum Remote Server auf und überwacht damit die Verbindung auf Timeouts.

Mit dem eigentlichen SSH Tunnel bauen wir auf dem Gerät, welches via UMTS erreichbar sein sollte, einen Tunnel zu einem anderen SSH Server auf. Danach kann mit:

ssh REMOTESERVER
ssh localhost 12345

eine Verbindung zu dem eigentlichen UMTS Server aufgebaut werden. Wir benutzen als einen anderen SSH Server um von diesem REMOTESERVER auf unseren UMTS Server zu gelangen.

Simple!