Secure Shell
Omgekeerde tunnels
Zoeken…
OpenSSH
Het maken van een reverse ssh tunnel kost slechts één schakelaar -R naar het oorspronkelijke commando.
Opdrachtregel
Laten we aannemen dat u verbinding maakt met example.com als een user- guest met behulp van de opdracht ssh [email protected] . Het openen van de omgekeerde tunnel kan er zo uitzien:
ssh -R 2222:localhost:22 [email protected]
Het opent een poort 2222 op de externe server (alleen loopback-interface) en elke verbinding met deze poort wordt doorgestuurd naar de ssh-server van uw lokale computer (poort 22 ).
Dit veronderstelt ook dat u opties AllowTcpForwarding yes en PermitOpen any in uw sshd_config op uw server heeft toegestaan. Anders zal het mislukken met een fout
open failed: administratively prohibited: open failed
Als u wilt toestaan dat de doorgestuurde poort toegankelijk is op andere netwerkadressen (dan localhost ), moet u GatewayPorts yes toestaan en een IP-adres of hostnaam of IP gebruiken):
ssh -R 2222:example.com:22 [email protected]
Configuratie
Bovendien kunt u uw externe poortdoorschakeling opgeven in uw ~/.ssh/config om te voorkomen dat u telkens dezelfde regel typt wanneer u verbinding maakt. Het is een goede gewoonte om ook alias in te stellen voor de host, die deze doorsturing heeft, als u regelmatig verbinding maakt met uw host en niet elke keer de port forwarding wilt starten:
Host example.com-R
Hostname example.com
User guest
RemoteForward 2222 localhost:22
en maak vervolgens port forwarding op afstand met behulp van ssh example.com-R
Uitgevoerd op de achtergrond
Het doorsturen van de poort kan eenvoudig op de achtergrond worden uitgevoerd met behulp van schakelaars -N (voer het externe commando niet uit, alleen het doorsturen), -f (ga naar achtergrond na authenticatie), -T (externe TTY-toewijzing uitschakelen). Alles bij elkaar genomen:
ssh -NTfR 2222:localhost:22 [email protected]