在Debian8上部署ShadowSocks
墙现在是越砌越高了。其实咱倒不是说反对过滤,但是我国的墙水平还是太低,没法精准过滤,走的又是“宁可错杀一千不可放过一个”的路线。经常把人畜无害的也给一起墙了。比如reCaptcha,就是躺墙的典型,非常影响正常使用。
现今有VPS的话,shadowsock是翻墙的好选择。在Debian8的官方源里面就有,不过版本有点老。部署最新版的方法如下:
1、选择用哪种server软件。
shadowsocks的server端有好几种,原版是python写的,另外还有用C重写的shadowsocks-libev等等。我两个VPS分别用了这两个,感觉上并没有多大差别。只是Python版的需要安装一大堆其它的依赖项。
2、shadowsocks-libev的安装
首先导入source key
wget -O- http://shadowsocks.org/debian/1D27208A.gpg | apt-key add -
第二步修改sources.list
vim /etc/apt/sources.list
增加这一条(debian 7以上的都用这个):
deb http://shadowsocks.org/debian wheezy main
第三步安装
apt-get update apt-get install shadowsocks-libev
3、shadowsocks Python版的安装
第一步安装Python PIP安装器:
apt-get install python-pip
第二步用pip安装
pip install shadowsocks
4、shadowsocks配置文件
Python版默认好像是没有的,可以新建一个,格式是json。
vim /etc/shadowsocks.json
libev版的在/etc/shadowsocks-libev/config.json
内容:
{ "server":"0.0.0.0", //服务器IP地址 "server_port":0000, //服务端口 "local_port":0000, //本地代理端口 "password":"123abc", //密码 "timeout":600, //超时时间,以秒计 "method":"aes-256-cfb" //加密方法,用这个就好 }
5、配置自动启动
libev版的自动启动很简单:
systemctl enable shadowsocks-libev
Python版的要这样搞(这是Debian 8的做法,其它使用systemd的系统也可以参考):
第一步:
在/etc/systemd/system/里新建一个service:
vim /etc/systemd/system/shadowsocks.service
内容:
[Unit] Description=Shadowsocks Server After=network-online.target [Service] Type=forking PIDFile=/var/run/shadowsocks/server.pid PermissionsStartOnly=true ExecStartPre=/bin/mkdir -p /var/run/shadowsocks ExecStartPre=/bin/chown root:root /var/run/shadowsocks ExecStart=/usr/local/bin/ssserver --pid-file /var/run/shadowsocks/server.pid -c /etc/shadowsocks.json -d start Restart=always RestartSec=24h User=root Group=root UMask=0027 [Install] WantedBy=default.target
保存
第二步:
刷新下service:
systemctl daemon-reload
第三步:
设置自动:
systemctl enable shadowsocks.service
OK,搞定。