先介紹一下我這裡的情況: 公司的電腦是在内部網裡面,不可能有公網位址;家裡的電腦是adsl撥号,有動态的公網IP,動态綁定到域名 xxx.xxx.org
如果現在想從家裡ssh到公司的電腦,直接連接配接肯定是不行的,不過可以用以下方法:
1. 在公司電腦上執行: ssh -f -N -R 12121:localhost:22 [email protected]
2. 然後在家裡的電腦上執行: ssh xxxx@localhost -p 12121 就可以成功連上公司的電腦了.
上面指令裡面的 12121 是任一個本地端口(上面例子裡面是家裡電腦的端口),可以在合理的範圍内任意指定.我的了解是這樣的: 前一個指令相當于把公司機器的22端口(localhost:22) 映射到 家裡機器的12121端口. 然後在家裡電腦上直接ssh 本機的 12121 端口,資料就會被轉發到公司機器了.就這麼簡單.