1. 程式人生 > >搭建http代理服務器

搭建http代理服務器

htm rule 有變 pos ren 由於 hour set caching

由於在某些特定場景下,我們的外網訪問會受到限制,如果有一些訪問需求的話就需要一個代理作為中轉了。

首先需要一臺機器作為中轉的服務器,這時候當然要去阿裏雲買一臺啦技術分享圖片。操作系統一定要選Linux,我使用的是CentOS。

之後的主要目標是在這臺機器上搭建一個http代理了。當然肯定不可能自己從頭開始寫,用現有的輪子就行。我使用的是Shadowsocks+Privoxy實現socks5代理轉http代理。

1.連接到這臺機器上,推薦使用secureCRT。輸入機器的ip,端口是22,再把用戶名密碼輸進去就行了。

2.安裝shadowsocks,參考https://github.com/shadowsocks/shadowsocks/wiki/Shadowsocks-%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E

  1. yum install python-setuptools && easy_install pip
  2. pip install shadowsocks


安裝之後後臺運行即可,監聽443端口

  1. sudo ssserver -p 443 -k password -m rc4-md5 --user nobody -d start


3.安裝Privoxy,不同系統指令有差別,下面是centos:

  1. yum install privoxy


4.修改文件/etc/privoxy/config ,修改如下屬性值:

  1. listen-address :8118
  2. enable-remote-toggle 1

然後在文件末尾添加:

  1. forward-socks5 / 127.0.0.1:443

修改文件可以使用vi指令,也可以使用FIllZilla直接拉下來文件再覆蓋上去(我就是這麽用的)。


5.啟動Privoxy即可開啟http代理。

  1. service privoxy restart


到此就可以直接使用這臺機器作為http代理了,端口號為8118

除此之外,可以用另一種方法配置http代理服務器,見下鏈接

http://www.piaoyi.org/network/Linux-Squid-HTTP-ip.html

這種方法可以配置用戶名和密碼。需要註意的是由於Squid版本不同,一些配置的路徑可能稍有變化,配置的時候註意一下:

    1. auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/squid_passwd
    2. auth_param basic children 5
    3. auth_param basic realm Squid proxy-caching web server
    4. auth_param basic credentialsttl 2 hours
    5. auth_param basic casesensitive off
    6. #
    7. # INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
    8. #
    9. acl ncsaauth proxy_auth REQUIRED
    10. http_access allow ncsaauth

搭建http代理服務器