Shadowsocks 服务端部署

其实服务器上已经有VPN和SSH,VPN是全局代理,不是很方便,SSH在关键时候会断开,手机上没有很好的客户端.今天忽然见到shadowsocks这个方案,比较方便,而且是IOS ANDROID win linux 全平台通用.索性就搞一个备用了.

具体参考这里
https://github.com/clowwindy/shadowsocks/wiki/Shadowsocks-%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E

首先检查下Python 版本,要有 2.6 or 2.7.

python --version
Python 2.7.4

这个ubuntu的服务器上一般都有吧.
然后官网上直接要用pip装shadowsocks,有些人可能会出现命令错误,还要安装些东西

apt-get install python-gevent python-pip

然后就可以

pip install shadowsocks

安装shadowsocks了。
接下来配置也比较简单,
新建一个 config.json,或者其他名字的都行,位置可以放在/etc/shadowsocks/下(默认没有这个文件,你要自己创建一个),或者home或者其他地方。
内容是

{
    "server":"my_server_ip",
    "server_port":8388,
    "local_port":1080,
    "password":"barfoo!",
    "timeout":600,
    "method":"table"
}

具体含义wiki上给的也很清楚

server          服务器 IP (IPv4/IPv6),注意这也将是服务端监听的 IP 地址
server_port     服务器端口
local_port      本地端端口
password        用来加密的密码
timeout         超时时间(秒)
method          加密方法,可选择 "bf-cfb", "aes-256-cfb", "des-cfb", "rc4", 等等。默认是一种不安全的加密,推荐用 "aes-256-cfb"

我只更改了加密方式和密码,加密方式推荐用bf-cfb,因为aes-256-cfb系统默认貌似不支持,会报错。想支持这些加密方式你还要安装

apt-get install python-m2crypto
然后就可以启动服务了。

ssserver -c /etc/shadowsocks/config.json
当然了,你不可能一直开着ssh,所以还是

nohup ssserver -c /etc/shadowsocks/config.json > log &
然后可以关了SSH。
或者更直接的开机自启动,添加到rc.local

/usr/local/bin/ssserver -c /etc/shadowsocks/config.json
安卓手机可以安装“影梭”然后配置,其他手机自行google。
更多客户端在这儿
https://github.com/clowwindy/shadowsocks/wiki/Ports-and-Clients