Socks Proxy如何讓你更安全的瀏覽互聯網
在不使用VPN的情況下如何保證在瀏覽網頁數據的時候更安全更隱私呢?Socks proxy和SSH將會給你答案。
在進入正題之前我們首先需要了解一下Socks proxy,什麼是Socks proxy?
Socks 伺服器通常是作為一個代理伺服器,充當一個中間代理的角色,與客戶端以及真正的服務端建立TCP連接,然後負責對客戶端與服務端之間的流量進行路由和轉發。一個socks代理伺服器能夠與任何一種網路協議進行工作,今天我們將使用SSH協議,而今天我們要使用的是Socks version 5, 該版本的socks加強了安全和UDP協議的支持。socks伺服器在客戶端與真正的伺服器之間僅僅進行流量傳輸的工作,不進行任何額外的工作,充分保證了數據的安全性。
那麼socks proxy是如何工作的呢?
首先需要在你本地安裝一個socks客戶端,我使用的是windows操作系統,因此socks客戶端選擇的是PuTTY,瀏覽器使用的是Firefox。
socks客戶端首先與socks伺服器建立連接,socks協議要求對連接請求進行認證。你通過代理伺服器向外部的服務端發送請求,外部伺服器只知道proxy伺服器的存在,這就是為什麼socks proxy在隱私方面做的很好的。
接下來就如何利用SSH協議建立Socks proxy進行詳細說明。
首先是需要準備的伺服器和環境:
VPS(Virtual PrivateServer),需要準備一台運行Linux操作系統的伺服器,並且能夠SSH登陸;
Firefox 瀏覽器
PuTTY,SSH登陸客戶端
Mac OS X/Linux中建立SSH Tunnel
伺服器和環境都準備好之後,接著就是建立SSH Tunnel。需要根據客戶端機器操作系統類型來選擇建立SSH Tunnel的方式。如果是Mac OS X或者Linux用戶,則使用下面的方法。
打開SSH客戶端,輸入以下命令來建立tunnel:
上述命令參數說明如下:
-D:這個參數是告訴SSH在指定埠上建立SOCKS proxy,這裡的指定埠是1026;
-f:使SSH命令在後台運行;
-C:對所有數據進行壓縮;
-q:使用安靜模式運行命令,告警和診斷信息將不被輸出;
-N:告訴SSH一旦tunnel建立不允許執行遠程命令,防止被人惡意利用;
最後需要將name@IP替換成sudo用戶名和VPS的IP地址。
命令會在後台運行,可以通過ps aux|grep ssh查看進程是否有在正常運行。
如果需要關閉進程,殺掉運行的進程即可:
windows中建立SSH Tunnel
在windows中可以在PuTTY中進行配置,建立SSH Tunnel。
啟動PuTTY,選擇Session,在Host Name中輸入VPS的IP地址,埠默認22,也可以指定其他埠,需要根據服務端的ssh服務埠來指定,Connect Type選擇SSH,然後重命名當前配置並保存session。
接著在PuTTY左邊的樹型菜單中選擇Connection–>SSH–>Tunnels,在Source port中輸入1025到65536中的任意一個數字,點擊Add,就能在Forwareded Ports中看到添加的埠信息,選擇Dynamic:
最後點擊Open,會彈出一個新窗口需要輸入登陸VPS伺服器的用戶名和密碼,輸入正確的用戶名密碼之後,就能登陸到VPS上並成功創建tunnel。
需要關閉tunnel的話非常簡單,只需要關閉PuTTY窗口即可。
配置Firefox使用SSHTunnel
Tunnel已經成功建立,接下來就是配置Firefox利用建立的SSH Tunnel瀏覽網頁。
滾動到」選項」頁的最底部,選擇設置網路代理,在連接設置窗口,選擇」手動代理配置」,在SOCKS Host中填寫localhost或者127.0.0.1,埠填寫上面設置的12345,協議選擇默認的SOCKS v5,點擊OK即可。
這樣一個socks proxy就搭建完成了,接下來我們看看效果。在chrome瀏覽器(沒有使用socks代理)中打開百度,輸入ip點擊搜索,可以看到顯示的IP為當前網路環境的公網IP地址;
接著在Firefox中打開百度輸入ip點擊搜索,可以看到顯示的ip地址發生了變化,變成了我配置的socks proxy所在的公網IP地址。
到此,儘管訪問網頁的流量被加密轉發了,並且對於目標伺服器來說訪問源IP改變了,但是DNS查詢的時候記錄的仍然是你本身所在的網路,並沒有做到完全的保密。這種情況也是有解決方案的。
打開Firefox瀏覽器,地址欄中輸入about:config進入瀏覽器的內部設置,在使用該配置的時候要非常的謹慎,配置不當可能會使瀏覽器無法正常使用。在彈出的告警對話框中點擊」我了解此風險!」進入下一個頁面。
上面這種方式實現的socks proxy只是一種簡單的代理方式,只能保證在瀏覽器中的上網行為被保護起來了,通過其他方式訪問互聯網的行為(例如APP)無法通過socks proxy保護數據安全。如果需要所有互聯網訪問被保護起來,就需要使用VPN了。


※Microsoft Office之DDE攻擊
※安全開發之掃描器迭代記:W9Scan
TAG:瘋貓網路 |