Ubuntu 搭建 shadowsocks

安装

在 Ubuntu 下安装 ss 很简单。只需要依次执行下面 3 条命令:

1
apt-get update
apt-get install python-pip
pip install shadowsocks

pip 是 python 下的方便安装的工具,类似 apt-get。

全部执行完毕且没有报错的话,我们的 shadowsocks 就算是装完了。接下来就是配置部署了。

写一个配置文件保存为 etc/shadowsocks.json,文件内容如下:

1
{
    "server":"0.0.0.0",
    "server_port":8388,
    "local_address": "127.0.0.1",
    "local_port":1080,
    "password":"mypassword",
    "timeout":600
}

server, server_port, password 需要自行根据自己的实际情况修改。

配置文件编辑完成后,接下来就可以部署运行了:

启动与停止

1
ssserver -c /etc/shadowsocks.json -d start

当然,我们可不希望每次重启服务器都手动启动 SS, 因此我们要把这条命令放到这个文件下:/etc/rc.d/rc.local,这样以后就能开机自动运行了。

好了,打开客户端呼吸墙外的空气吧!

停止 SS:

1
ssserver -c /etc/shadowsocks.json -d stop

自动启动

新建脚本文件/etc/systemd/system/shadowsocks.service,内容如下:

1
[Unit]
Description=Shadowsocks

[Service]
TimeoutStartSec=0
ExecStart=/usr/bin/ssserver -c /etc/shadowsocks.json

[Install]
WantedBy=multi-user.target

启动 shadowsocks 服务:

1
systemctl enable shadowsocks
systemctl start shadowsocks

检查服务是否正常

1
systemctl status shadowsocks -l

错误排除

出现如下错误:

1
AttributeError: /usr/lib/x86_64-Linux-gnu/libcrypto.so.1.1: undefined symbol: EVP_CIPHER_CTX_cleanup

是由于在 openssl1.1.0 版本中,废弃了 EVP_CIPHER_CTX_cleanup 函数,只需打开

/usr/local/lib/python2.7/dist-packages/shadowsocks/crypto/openssl.py

替换 cleanup 为 reset,重启 SS。

客户端下载链接