Hallo zusammen,
ich habe einen Server, der problemslos zu erreichen ist und ich habe einen Client PC, der hinter einer Firewall sitzt, die Verbindungen von außen blockiert. Die Namen "Client" und "Server" seien hier nur zur Veranschaulichung gewählt, damit man weiß von welchen Computer ich gerade rede.
Ab und zu muss ich aus dem Netz in dem der Server steht den Client PC erreichen.
Die Lösung dazu ist Reverse SSH. D.h. ich baue eine Verbindung vom Cilent PC zum Server auf. Dieser baut dann scheinbar (wenn ich es richtig verstanden habe) eine Verbindung zurück auf. Soweit zu Theorie. Kommen wir zur Praxis. Vieler Orts habe ich gelesen, dass man zunächst folgenden Befehl auf dem Client PC ausführen muss:
ssh -l user -nNT -R 1337:192.168.0.123:22 Server-IP
Zunächst, was bedeutet "-nNT"? Und v.a. was genau bedeutet das hier: "1337:192.168.0.123:22"? Ist "192.168.0.123" die lokale IP des Servers? Welche bedeutungen haben die Ports "1337" und "22"? Mein Server erreiche ich per SSH auf Port "50000" (wird dann vom vor dem Server stehenden Router auf Port 22 umgeleitet). Was muss ich nun genau für einen Befehl benutzen? Muss ich einen neuen Port in dem Router vor dem Server öffnen?
Als nächstes soll man diesen Befehl ausführen (auf dem Client PC?):
ssh -p 1337 localhost
Was macht der nun genau?
Ich habe auch folgenden Hinweis zu der Thematik gefunden:
"Nutzen Sie beim Aufbauen des Tunnels wo immer möglich den FQDN, auch und gerade bei wechselden IP-Adressen (dyndns.org). Der Kunde wird sonst jedes Mal, wenn er die Verbindung aufbaut, die Sicherheitsabfrage vom SSH-Client bekommen."
Was bedeutet das?
Außerdem habe ich Alternativ zu obigen Befehl auch diesen gefunden:
ssh -R *:1337:localhost:22 [email protected]
Wo liegen die Unterschiede?
Vielen Dank für eure Mühen!!!
Gruß
Peter
Einsteiger147 Gast |