家里有台Cubieboard2(linux系統),有時候我需要在公司用我的筆記本(Win7系統)遠程登陸到家里的設備。
本來想在家里做一個端口映射 + 路由器帶的動態域名來解決的,
誰知道家里用的移動鐵通的寬帶,端口映射沒有作用,坑爹了。。。
還好在公司的路由可以做端口映射,那就做一個反向隧道來連接吧。
>> Cubieboard2(linux)內網IP : 192.168.1.100
>> 公司筆記本(Win7)內網IP:172.17.10.100
>> 公司外網靜態IP:120.42.*.*
1. 在家里的Cubieboard2上運行:(TODO:公私鑰 機制解決密碼問題,否則連接上去以后需要輸入密碼)
Cubieboard2 :~$ autossh -R 8034:192.168.1.100:22 djian@120.42.*.*
2. 進入公司路由器,將22端口轉發到筆記本(172.17.10.100)
3. 筆記本上安裝 Putty 和 Bitvise WinSSHD
4. 在公司,筆記本上啟動WinSSHD服務,等待家里的 Cubieboard2 主動連上來。
5. 一旦Cubieboard2連上來以后,隧道就自動建立了。
6. 現在,直接用Putty連接 127.0.0.1:8034 就可以登錄家里的Cubieboard2了。
==我所理解的ssh 參數
-L 建立 從本機連接到遠程 的隧道
-R 建立 由遠程連接到本機 隧道
[bind_address:]port:host:hostport
[bind_address:]port: Putty登陸時連接用的地址
host:hostport Putty要登陸到的設備地址
最后面一個:djian@120.42.*.*
建立隧道用的sshd服務地址
參考:
《三種不同類型的ssh隧道》 http://codelife.me/blog/2012/12/09/three-types-of-ssh-turneling/