網上已經有一些方案。但是看到好幾篇文章都有些問題。主要是在 瀏覽器的設置上存在問題。
1,安裝客戶端。
get http://www.djangoz.com/ssr
sudo mv ssr /usr/local/bin
sudo chmod 766 /usr/local/bin/ssr
ssr install
ssr config
2,config 配置方案參考其他博客中設置即可。(主要依照之前server 的設置在這裏填寫)
3,sudo ssr start
4,Shadowsocks是一個使用SOCKS5(或者SOCK4之類)協議的代理,它只接受SOCKS5協議的流量,不接受HTTP或者HTTPS的流量。所以當你在Chrome上能穿牆的時候,是Proxy SwitchyOmega插件把HTTP和HTTPS流量轉換成了SOCKS協議的流量,才實現了Shadowsocks的代理。而終端是沒有這樣的協議轉換的,所以沒法直接使用Shadowsock進行代理。這時候就需要一個協議轉換器,這裏我用了Privoxy。
安裝Privoxy
sudo apt-get install privoxy
sudo vim /etc/privoxy/config
# 在 froward-socks4下面添加一條socks5的,因爲shadowsocks爲socks5, # 地址是127.0.0.1:1080。注意他們最後有一個“.”
# forward-socks4 / socks-gw.example.com:1080 . forward-socks5 / 127.0.0.1:1080 . # 下面還存在以下一條配置,表示privoxy監聽本機8118端口, # 把它作爲http代理,代理地址爲 http://localhost.8118/ 。 # 可以把地址改爲 0.0.0.0:8118,表示外網也可以通過本機IP作http代理。 # 這樣,你的外網IP爲1.2.3.4,別人就可以設置 http://1.2.3.4:8118/ 爲http代理。 listen-address localhost:8118
sudo systemctl restart privoxy.serivce
或者 嘗試:sudo service privoxy start
5,添加環境變量,最好添加到bash 中。
~$ export http_proxy="127.0.0.1:8118" 注意爲英文字符。
~$ export https_proxy="127.0.0.1:8118"
6,瀏覽器設置:
1)在add ones 中下載SwitchOmega
2) 分別創建一個 情景模式 和 代理模式。 如其他博客。
但是:代理模式 這裏的 設置他們有錯誤。應該設置代理到本地的8118 端口。然後再由Privoxy 轉發出去。
其他的與其他博客設置相同。參考:https://blog.csdn.net/u010658816/article/details/79344970
-----
後續問題跟進:
1,由於後來我修改了ssr 服務器的端口號碼。導致瀏覽器不能上網了。
解決方法: 運行ssr config 重新配置端口號碼。
ssr 重新啓動後,瀏覽器恢復上網。
2, 命令行執行 curl -o hhh.html www.youtube.com 沒有下載內容下來。
解決方法: curl -o hhh.html https://www.youtube.com
可能原因: privoxy 配置的環境變量 僅支持 http 和 https 協議的轉發。