Shadowsocks 是一个开源安全的 Socks5 代理,中文名称“影梭“,类似于 SSH 代理。与一度非常流行的基于 GAE 的科学上网方式相比,Shadowsocks 部署简单,使用灵活;同时与全局代理的 VPN 不同,Shadowsocks 可以仅针对浏览器代理,轻巧方便,如果说 VPN 是一把屠龙宝刀,那么 Shadowsocks 就是一把瑞士军刀,虽小巧但功能强大。
一、Shadowsocks 科学上网原理
简单理解的话,Shadowsocks 是将以前通过 SSH 创建的 Socks5 协议拆开成 Server 端和 Client 端,流程和利用 SSH tunnel 大致类似,下面这个示例图能简单理解其科学上网的原理。
更多说明请参考这篇文章写给非专业人士看的 Shadowsocks 简介。
二、Ubuntu 安装使用 Shadowsocks
在 Shadowsocks 官网的客户端页面:http://shadowsocks.org/en/download/clients.html(需翻墙),可以看到有不少方法可以使用,如:有界面的Shadowsocks-Qt5。这里为了方便转换 Http 代理,选择命令行模式安装,依次输入命令:
sudo apt-get install python-pip pip install shadowsocks
然后在本地任意目录创建配置文件 ss_conf.json,比如放到目录 /home/xhhjin/software,内容如下:
{ "server":"server_ip", "server_port":443, "local_address": "127.0.0.1", "local_port":1080, "password":"password", "timeout":300, "method":"aes-256-cfb", "fast_open": false }
请根据你获得的 Shadowsocks 帐号信息自行修改这个配置文件,比如服务器、端口和密码等。
接着创建一个脚本文件来启动 Shadowsocks,命名为 ss_start.sh,输入内容(里面的地址记得换成你自己的):
sslocal -c /home/xhhjin/software/ss_conf.json
给这个脚本添加执行权限并执行就可以使用 Shadowsocks 了。
三、Shadowsocks 转换 HTTP 代理
Shadowsocks 默认是用 Socks5 协议的,对于 Terminal 的 get,wget 等走 Http 协议的地方是无能为力的,所以需要转换成 Http 代理,加强通用性,这里使用的转换方法是基于 Polipo 的。
输入命令安装 Polipo:
sudo apt-get install polipo
修改配置文件:
sudo gedit /etc/polipo/config
将下面的内容整个替换到文件中并保存:
# This file only needs to list configuration variables that deviate # from the default values. See /usr/share/doc/polipo/examples/config.sample # and "polipo -v" for variables you can tweak and further information. logSyslog = false logFile = "/var/log/polipo/polipo.log" socksParentProxy = "127.0.0.1:1080" socksProxyType = socks5 chunkHighMark = 50331648 objectHighMark = 16384 serverMaxSlots = 64 serverSlots = 16 serverSlots1 = 32 proxyAddress = "0.0.0.0" proxyPort = 8123
重启 Polipo:
/etc/init.d/polipo restart
验证代理是否正常工作:
export http_proxy="http://127.0.0.1:8123/" curl www.google.com
如果正常,就会返回抓取到的 Google 网页内容。
另外,在浏览器中输入http://127.0.0.1:8123/
便可以进入到 Polipo 的使用说明和配置界面。
四、设置浏览器和开机启动
最后就是将转换后的 Http 代理设置到浏览器中,地址是 127.0.0.1,端口 8123,代理类型当然是选择 Http 啦。对于 FireFor 用户来说,插件可以选择 AutoProxy 或 FoxyProxy,但我更推荐用 Pan(点击安装),去广告的同时,轻松管理代理!
为了更方便的应用,还需要在启动应用程序中设置开机启动,选择启动应用程序-》添加,名称和注释随便填写,命令填写 /home/xhhjin/software/ss_start.sh
(修改为你自己的对应路径)即可。
全部完成,重启电脑看看是不是已经全部搞定了呢。
欢迎转载,转载请注明出处:蔓草札记 » Ubuntu14.04使用Shadowsocks及转换HTTP代理