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]


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow