Pokud se chci připojit z počítače s veřejnou adresou (v příkladech označený jako lokální stroj) na počítač s neveřejnou adresou (označovaný jako cílový stroj). Na obou musí běžet SSH démon (openssh-server).
Inspirováno článkem na Bypassing corporate firewall with reverse ssh port forwarding [uloženo].
1. Na lokálním stroji
- Zjistit IP adresu (ifconfig), např. 100.100.100.100
2. Na cílovém stroji
- ssh -R 2210:localhost:22 100.100.100.100
- Potvrdit případně klíče, zadat heslo k účtu na lokálním stroji
3. Na lokálním stroji
- ssh -p 2210 user@localhost
Možné komplikace
- neběží SSH démon: zkontrolovat pomocí ps ax | grep sshd anebo přes netstat -ptnl | grep :22. Musí běžet opravdou na obou strojích! Pokud neběží, tak to při připojování ve třetím kroku píše: ssh_exchange_identification: Connection closed by remote host. Takže ho nainstalovat: sudo apt-get install openssh-server
- uživatelské účty: příklad předpokládá, že existuje účet se stejným uživatelským jménem na lokálním a cílovém stroji. Pokud ne, je potřeba specifikovat v příkazech username.
- povolení přístupu na port: do /etc/hosts.allow přidat sshd: ALL
- verbose mode - pro ladění přidat v kroku 2 a 3 parametr -v