用亞馬遜雲建代理服務器


作者:Vamei 出處:http://www.cnblogs.com/vamei 轉載請先與我聯系。

 

我們用電腦、平板、手機等訪問互聯網時,本地設備和服務器之間的通信有可能因為某些不可控因素被切斷。這種情況下,我們可以采用“曲線”的方式,讓一個第三方的服務器來做接力,從而連接目標服務器。 代理服務器可以繞過許多基於IP地址的限制。例如某視頻網站只允許日本的IP訪問,那么可以借助一台在日本的代理服務器,來讓視頻網站誤以為訪問者是一台身在日本的電腦。

 

我將使用亞馬遜的雲服務(AWS)來建立代理服務器。首先需要有AWS的EC2實例。登錄AWS網站,按照指導創建即可。可參考亞馬遜雲架設WordPress博客。選擇節點時,最好用距離中國較近的節點,如東京。實例建立后,保存好登錄驗證用的.pem文件,並記錄下IP地址。下面以199.199.199.199的IP地址為例。

 

建立代理服務器

我選擇的代理服務器軟件是Squid。登錄EC2實例,在命令行下安裝Squid:

sudo apt-get install squid3

 

編輯/etc/squid3/squid.conf文件。這個配置文件說明了Squid的運行方式。squid.conf的設置很靈活,下面是一個最基本的設置:

# 控制列表,定義all acl all src all # 允許all訪問 http_access allow all # squid監聽的目標端口 http_port 2046

 

重啟Squid服務器,以便加載新的配置:

sudo service squid3 restart

 

現在,你已經有了私人的代理服務器,可以更改本地電腦的網絡設置,以便使用代理服務器。在Mac OSX上,在System Preferences->Network->Advanced->Proxies中填上代理服務器的IP地址和端口,就可以開始使用代理服務器了:

199.199.199.199為代理服務器的IP。2046是我們在conf文件中設置的代理端口。在Windows和其他Linux系統中,也可以在系統中設置網絡,從而在全局使用代理服務器。也可以在瀏覽器的設置中啟動,只是局部的在瀏覽器內使用代理服務器。

 

使用SSH隧道連接代理服務器

上面的通信中,Squid代理服務器只起到了接力的作用。但客戶端與Squid服務器的通信依然是明文,所以通信安全無法保障。為了進一步加強通信的私密性,可以使用SSH隧道(SSH Tunnel),在本地電腦和代理服務器之間建立秘密通道。

 

建立隧道

 

在Unix電腦上,可以在命令行直接使用ssh:

ssh -i Tokyo-VPN.pem -N -L2046:localhost:2046 ubuntu@199.199.199.199

上面的命令中,Tokyo-VPN.pem是創建EC2實例時的PEM文件。通過這個命令,本地的2046端口和代理服務器的2046端口將建立SSH隧道。兩者之間的信息將加密傳輸,而不用擔心外部監聽和干擾。

 

還要更改本地代理設置,啟用SSH隧道:

需要更改的地方很簡單,把之前的代理服務器地址199.199.199.199改為127.0.0.1。

 

訪問測試:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM