在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,搞定。

Leave a Reply

Your email address will not be published. Required fields are marked *