Secure Shell
Reverse Tunnel
Suche…
OpenSSH
Das Erstellen eines umgekehrten ssh Tunnels erfordert nur einen Schalter -R zum ursprünglichen Befehl.
Befehlszeile
Nehmen wir an , Sie zu verbinden example.com als Benutzer guest einen Befehl ssh [email protected] . Das Öffnen des umgekehrten Tunnels kann folgendermaßen aussehen:
ssh -R 2222:localhost:22 [email protected]
Auf dem Remote-Server (nur Loopback-Schnittstelle) wird ein Port 2222 geöffnet, und jede Verbindung zu diesem Port wird an den SSH-Server Ihres lokalen Computers (Port 22 ) weitergeleitet.
Dies setzt auch voraus, dass Sie die Optionen AllowTcpForwarding yes und PermitOpen any in Ihrer sshd_config auf Ihrem Server zugelassen haben. Andernfalls schlägt der Fehler fehl
open failed: administratively prohibited: open failed
Wenn Sie zulassen möchten, dass der weitergeleitete Port für andere Netzwerkadressen (als localhost ) GatewayPorts yes , müssen Sie zusätzlich GatewayPorts yes zulassen und eine IP-Adresse oder einen Hostnamen oder eine IP-Adresse verwenden.
ssh -R 2222:example.com:22 [email protected]
Aufbau
Darüber hinaus können Sie die Remote-Portweiterleitung in ~/.ssh/config , um zu vermeiden, dass bei jeder Verbindung dieselbe Zeile ~/.ssh/config . Es empfiehlt sich, auch einen Alias für den Host einzurichten, der über eine Weiterleitung verfügt, wenn Sie häufig eine Verbindung zu Ihrem Host herstellen und die Port-Weiterleitung nicht jedes Mal initiieren möchten:
Host example.com-R
Hostname example.com
User guest
RemoteForward 2222 localhost:22
Erstellen Sie dann die Remote-Portweiterleitung einfach mit ssh example.com-R
Laufen im Hintergrund
Die Portweiterleitung kann einfach im Hintergrund mit den Schaltern -N (Remote-Befehl nicht ausführen, nur Weiterleitung), -f (nach Authentifizierung in den Hintergrund), -T (Deaktivieren der Remote-TTY-Zuordnung). Alles zusammenstellen:
ssh -NTfR 2222:localhost:22 [email protected]