SSH另類應用Socket5代理
關于SSH之前在《ssh基本原理和免密碼登錄》文章中介紹過ssh的一些基本的原理,SSH其實還有一個比較另類的應用就是做Socket 5代理。
現(xiàn)在很多公司都對內部訪問網(wǎng)絡做了一些限制,比如不讓訪問微博,不能上QQ等聊天工具。小編公司就安裝了一個上網(wǎng)行為管理的設備,居然在linux下收發(fā)郵件都是問題,真不知道這個設備是哪個公司產的,幸虧小編公司在外部有很多服務器可以拿來做代理使用。
幸好有天然的ssh支持socket 5代理,通過ssh進行代理有很多好處:ssh通道是加密的,ssh代理不需要在服務器端安裝什么軟件因為ssh-server是linux的標配了。
打開終端執(zhí)行如下命令:
ssh -qTfnN -D 7070 -p 22 user@host |
該命令是一個后臺命令,執(zhí)行完畢后輸入正確的密碼(可以免密碼登錄)后就可以關閉終端。
以Thunderbird為例設置代理服務器:菜單欄–>編輯–>首選項–>高級–>網(wǎng)絡&磁盤磁盤空間–>鏈接-設置成如下:
這樣就可以享受ssh給你帶來的socket 5代理了。
如果您有服務器在國外,還可以使用這種方式進行翻墻,Pidgin、Firefox、Chrome(需要插件)均可以通過這個方法翻越公司的行為管理設備。
順便提下該才命令的各個參數(shù):
- -D 綁定本地端口
- -p 遠程服務器的端口
- -q Quiet mode,ssh的診斷信息以及警告等信息被抑制
- -T 禁用偽終端分配
- -f 該選項是后臺執(zhí)行的ssh在規(guī)定時間(10秒)內進行連接,如果超過該時間ssh將退出。
- -n 重定向標準輸入到/dev/null中,為了防止從標準輸入中讀入。ssh進行后臺執(zhí)行時必須使用該參數(shù)。該選項對于要求輸入密碼不起作用
- -N 不執(zhí)行遠程命令