安装SS服务端
CentOS
- 执行命令
# 安装 python setup tools
yum install python-setuptools -y
#安装pip
easy_install pip
#升级 pip
pip install –upgrade pip
#安装 shadowsocks
pip install shadowsocks
- 单独汇总一下,方便直接复制粘贴
yum install python-setuptools -y
easy_install pip
pip install –upgrade pip
pip install shadowsocks
Debian/Ubuntu
apt-get install python-pip
# 国内源都删了
pip install shadowsocks -i https://pypi.python.org/simple/
有时 Ubuntu 会遇到第一个命令安装
python-pip
时找不到包的情况。pip 官方给出了一个安装脚本,可以自动安装 pip。先下载脚本,然后执行即可:
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
配置ShadowSocks
- 创建配置文件
vi /etc/shadowsocks.json
- 然后输入如下内容
{
"server":"0.0.0.0",
"server_port":10010,
"password":"your_password",
"timeout":300,
"method":"rc4-md5",
"fast_open":true,
"workers": 1
}
- 代码中各字段的含义
字段 | 说明 |
---|---|
server | 服务器 IP地址 (IPv4/IPv6) |
server_port | 服务器监听的端口,一般设为80,443等,注意不要设为使用中的端口 |
password | 设置密码,自定义 |
timeout | 超时时间(秒) |
method | 加密方法,可选择 “aes-256-cfb ”,“rc4-md5 ”等等。推荐使用 “rc4-md5” |
fast_open | true 或 false 。如果你的服务器 Linux 内核在3.7+,可以开启 fast_open 以降低延迟。 |
workers | workers数量,默认为 1。 |
启动Shadowsocks服务端
ssserver -c /etc/shadowsocks.json
screen -dmS ssserver ssserver -c /etc/shadowsocks.json
启动可能会出现错误AttributeError: /lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: EVP_CIPHER_CTX_cleanup
这是由于在openssl 1.1.0中废弃了 EVP_CIPHER_CTX_cleanup()
函数而引入了 EVE_CIPHER_CTX_reset()
函数所导致的
1、定位错误文件
2、修改错误文件
vim /usr/local/lib/python3.8/dist-packages/shadowsocks/crypto/openssl.py
3、搜索 cleanup
并将其替换为 reset
4、再次启动,出现如下内容说明成功
客户端连接服务端
配置
成功截图
其他
疑难杂症
启动后发现客户端连接不上的情况,可能是因为服务器供应商的安全策略,有2种解决方案:
- 上供应商的平台去开启安全策略,允许非正常端口访问
- 替换为其他的端口,如80、8080等默认允许访问的端口
同类产品
- go语言shadowsocks:https://github.com/shadowsocks/go-shadowsocks2