CentOS使用Privoxy上網設置shadowsocks代理的方法
技術支持服務電話:15308000360 【7x24提供運維服務,解決各類系統/軟硬件疑難技術問題】
客戶端為CentOS(一般Linux環境)時,(尤其是命令行里的命令)使用shadowsocks搭配Privoxy上網的方法。
若此篇文章還不能解決您的問題,請聯系QQ:38585404 (有償技術支持)
安裝客戶端shadowsocks
其實shadowsocks安裝時是不分客戶端還是服務器端的,只不過安裝后有兩個腳本一個是sslocal代表以客戶端模式工作,一個是ssserver代表以服務器端模式工作。
yum install python-pip pip install shadowsocks
依次執行上述兩個命令,先安裝Python的pip,然后安裝shadowsocks。然后執行下述命令后臺啟動:
執行前請更改命令中的默認參數
nohup sslocal -s your_server_ip -p your_server_port -l 1080 -k your_server_passwd -t 600 -m rc4-md5 > /dev/null
注意
1,使用的是sslocal這個命令,表示shadowsocks以客戶端模式工作
2,將上述命令里的your_server_ip,your_server_port,your_server_passwd換成自己的,這三個分別代表服務器ip,服務器上shadowsocks的端口以及密碼.后面的rc4-md5加密方式也要換成跟server端一致。
3,前面的nohub表示后臺執行,否則將會阻塞shell端口.
為了更方便,建議新建一個.json的文件,將上述信息放里面,如新建/etc/shadowsocks.json文件,內容為:
{ "server":"your_server_ip", #ss服務器IP "server_port":your_server_port, #端口 "local_address": "127.0.0.1", #本地ip "local_port":1080, #本地端口 "password":"your_server_passwd",#連接ss密碼 "timeout":300, #等待超時 "method":"rc4-md5", #加密方式 "fast_open": false, # true 或 false。如果你的服務器 Linux 內核在3.7+,可以開啟 fast_open 以降低延遲。開啟方法: echo 3 > /proc/sys/net/ipv4/tcp_fastopen 開啟之后,將 fast_open 的配置設置為 true 即可 "workers": 1 # 工作線程數 }
然后運行
nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 &啟動shadowsocks。
如果想增加開啟自動啟動,執行:
echo " nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 &" /etc/rc.local執行
ps aux |grep sslocal |grep -v "grep"查看后臺sslocal是否運行。
安裝Privoxy
下載地址:http://www.privoxy.org/sf-download-mirror/Sources/3.0.26%20%28stable%29/privoxy-3.0.26-stable-src.tar.gz
上述安好了shadowsocks,但它是socks5代理,我門在shell里執行的命令,發起的網絡請求現在還不支持socks5代理,只支持http/https代理。為了我門需要安裝privoxy代理,它能把電腦上所有http請求轉發給shadowsocks。
訪問官網http://www.privoxy.org/獲得Privoxy的最新源碼:
privoxy-3.0.26-stable-src.tar.gz,執行tar -zxvf privoxy-3.0.26-stable-src.tar.gz解壓,然后cd privoxy-3.0.26-stable進去。
安裝前需要執行useradd privoxy創建一個用戶privoxy,然后依次執行如下三條命令:
autoheader && autoconf ./configure make && make install
查看vim /usr/local/etc/privoxy/config文件,先搜索關鍵字:listen-address找到listen-address 127.0.0.1:8118這一句,保證這一句沒有注釋,8118就是將來http代理要輸入的端口。然后搜索forward-socks5t,將forward-socks5t / 127.0.0.1:1080 . 此句的注釋去掉(注意后面的點不要刪了哦).
執行如下命令啟動privoxy,參考官網,不同的平臺對應不同的方法:
privoxy --user privoxy /usr/local/etc/privoxy/config也可以用系統命令:service privoxy start
配置/etc/profile
執行vi /etc/profile,添加如下三句:
export http_proxy=http://127.0.0.1:8118 export https_proxy=http://127.0.0.1:8118 export ftp_proxy=http://127.0.0.1:8118
或則可以先執行:
curl ip.gs顯示為本地IP信息(例:當前 IP:222.xxx.xxx.xxx 來自:中國四川 電信) 直接執行:
export http_proxy=http://127.0.0.1:8118再執行:
curl ip.gs顯示代理后的IP信息(例:當前 IP:138.xxx.xxx.xxx 來自:美國)
第三句ftp的代理根據需要,不需要的話可以不添加.然后source /etc/profile,執行curl www.google.com或wget www.google.com判斷是否成功訪問。
注意:此處不要用ping命令來檢測
如果不能訪問,請重啟機器,依次打開shadowsocks和privoxy再測試.
nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 & privoxy --user privoxy /usr/local/etc/privoxy/config
備注:如果不需要用代理了,記得把bash里的配置注釋上,免得把流量跑完了。