注意: 最新版本的SS-Rust在CentOS 7会报glibc版本过低的错,不推荐使用CentOS 7;

# CentOS 7 查看glibc版本
strings /lib64/libc.so.6 | grep GLIBC_

下载shadowsocks-rust

# 下载压缩包
cd /usr/local/bin/

wget https://github.com/shadowsocks/shadowsocks-rust/releases/download/v1.11.0/shadowsocks-v1.11.0.x86_64-unknown-linux-gnu.tar.xz

# 解压缩(名字太长,可以用Tab键补全)
xz -d shadowsocks-v1.11.0.x86_64-unknown-linux-gnu.tar.xz && tar -xf shadowsocks-v1.11.0.x86_64-unknown-linux-gnu.tar

# 修改所有者
chown root.root ./ss*

创建配置文件config.json

# 创建目录
mkdir /etc/shadowsocks-rust && cd /etc/shadowsocks-rust

vim config.json

# 配置内容
{
"server": "0.0.0.0",
"server_port": 59876,
"timeout": 60,
"method": "aes-128-gcm",
"password": "1a2b3c",
"fast_open": false,
"nameserver": "dns.google",
"mode": "tcp_and_udp"
}

验证是否能够启动

# 临时运行,检测ss是否能够启动
/usr/local/bin/ssserver -c /etc/shadowsocks-rust/config.json

如果遇到的报错是glibc版本低于2.18,自行编译升级glibc即可(高风险):

升级过程 略

没有报错的话,继续创建服务程序;

创建服务文件service

# 切换路径
cd /etc/systemd/system/ && vim ssrust.service

# 内容
[Unit]
Description=Shadowsocks-Rust Service
After=network.target

[Service]
Type=simple
User=nobody
Group=nogroup
ExecStart=/usr/local/bin/ssserver -c /etc/shadowsocks-rust/config.json

[Install]
WantedBy=multi-user.target

配置systemd

cd /etc/systemd/system/

systemctl daemon-reload

systemctl start ssrust //启动

systemctl stop ssrust //停止

systemctl enable ssrust //加入开机自启

systemctl disable ssrust //取消开机自启

systemctl is-enabled ssrust //判断服务是否处于开机自启状态,输出enabled即代表开机自启
本文部分内容转自:https://shiping.date/archives/35.html