http://en.wikipedia.org/wiki/Tunneling_protocol
http://souptonuts.sourceforge.net/sshtips.htm
透過ssh tunnel與遠端主機連線之後,便可以透過這個通道
把原本想在本機端做的服務,交由到遠端主機上來做,再將資料傳回本機端
可突破公司防火牆限制,也避免被監控
事前準備:
一、要有一台具有SSH Server功能的主機來當作跳板
二、Client端要裝有SSH連線軟體,使用Putty即可
透過ssh tunnel使用Proxy(代理伺服器)
打開Putty,接著再點選Connection->SSH->Tunnels 畫面
輸入Source port: 8080(看您Local端要listen哪個port,可自選)
Destination:Proxy server的IP和Port,填入完後要記得按"Add"

為了方便往後使用,到Session選項中點儲存"Save"設定值,之後執行PuTTY時可直接讀取

接著再登入Remote SSH主機後,將視窗縮到最小,保持ssh連線

在Firefox中設定Proxy如下,即可先透過Tunnel先連到SSH主機
由SSH主機去連外部Prxoy Server,再將資料轉回給Local端

之後再到http://dir.twseo.org/ip-check.php查上線IP
若為外部Proxy的IP即成功

此為正向SSH Tunnel使用方式,若要反向使用SSH Tunnel
可參考下面兩邊文章
http://portable.easylife.tw/2043
http://josephjiang.com/entry.php?id=312
但若遇到有些公司只開放公司電腦只能連到特定SSH主機
並且該台SSH主機又有限定連線的來源IP的話
就無法再用反向SSH Tunnel從外部連回公司
若這時仍想存取公司內部電腦的話
可以再搭配Teamviewer,先在公司電腦使用Teamviewer連線
公司電腦設定使用proxy連線到Teamviewer做中繼主機來遠端搖控桌面
到時候再從公司外部的電腦Teamviewer互連回來即可
(繼續閱讀...)