材料:
連接非公司網路的電腦一台
OS一份 (windows 或 linux , bsd皆可)
安裝sshd
windows 可以安裝opensshd http://lexa.mckenna.edu/sshwindows/
linux 可以按不同的dist. 安裝
安裝sshd...參考不同的sshd文件
更改 sshd.conf 的port 設定為 80
如果要sshd server 當proxy可以灌 squid 之類的東西
不然可以用 isp 的 proxy server
材料準備好就可以開始挖洞去
如果用linux 可以用ssh
如果windows就找一些ssh 的 client 如putty, plink (plink是專用來tunnel用的)
plink -L 3128:proxyIP:proxyPort -l username tunnelserverIP
第一個3128是公司那台電腦的某一個port
proxyIP是tunnelserver那台可以到達的某台proxyIP
proxyPort就是proxy 的port
tunnelserverIP就是剛準備的那台 IP
例如:
你要msn連去 http proxy 4000
然後你的4000 指向 tunnel後的 XXXnet 公司的proxy proxy.xxx.net:3128
家裡的ip是 61.61.61.61
那就
plink -L 4000:proxy.xxx.net:3128 -l username 61.61.61.61
or
ssh -2 -g -L 4000:proxy.xxx.net:3128 -l username 61.61.61.61
再設一下msn 用http proxy 指向 127.0.0.1的 4000看看
當然...如果你家的MIS要擋....還是會穿不過去
SSH Tunnel 分類:Security2006/12/04 10:58在一個可能全部的人都開著 sniffer 程式在收廣播封包的環境,登入帳號密碼是個很不智的作法,只好開 SSH Tunnel。這樣做是挖一條 SSH 的加密通道,讓 browser 或 IM 等可以設 socket proxy 的 ap 透過這條加密通道將封包送到自己可以信任的地方,再用明碼送出。
想法是這樣:A 電腦處於一個危險的環境,B 電腦 (example.com) 處於自己可以信任的環境 (且有跑 sshd)。假設 A 本身有 ssh client (OpenSSH),在 A 先執行:
# ssh -D 7070 account@example.com
// 在 local port 7070 挖加密通道,導向 example.com 的 port 22
接 下來在 browser 或 IM 等 ap 設定 socket proxy 指向 localhost:7070,如此一來,明碼封包會先送至 local 端的 port 7070 由加密通道送至 example.com,再由 example.com 以明碼轉送出去。
這種作法也可以用來突破被 firewall 擋住的 port 以達成連外的目的。
putty 詳細設定請參考http://cha.homeip.net/blog/archives/2006/01/putty_ssh_tunne.html
1 則留言:
再補一個小小連結,造福一下使用MAC的朋友.
最速、最高! -Mac電腦下的SSH Tunneling!
張貼留言