CentOS 7 搭建ShadowSocks(ss)服务器

在搭建ss服务器之前,先谈一下CentOS 7与CentOS 6在主要使用上的区别。
1、服务管理由service命令变为systemctl命令。支持start、stop和status 3种动作。
2、防火墙由iptables变为firewalld。使用firewall-cmd进行操作。
firewalld的配置请参考如何在RHEL/CentOS 7以及Fedora中配置FirewallD

注意在查找资料的时候,搜索词应该加上CentOS 7,如: CentOS 7 安装ss服务器。减少搜索到CentOS6内容的机会。以免采用了iptables而使过程不顺利。

安装Shadowsocks

#安装 python setup tools
yum install python-setuptools -y
#安装pip
easy_install pip
#升级 pip
pip install –upgrade pip
#安装 shadowsocks
pip install shadowsocks

配置Shadowsocks

vi /etc/shadowsocks-libev/config.json

然后对照下面的修改

{
“server”:”0.0.0.0″,
“server_port”:8989,
“local_address”: “127.0.0.1”,
“local_port”:1080,
“password”:”mypassword”,
“timeout”:300,
“method”:”aes-256-cfb”,
“fast_open”: false,
“workers”: 1
}

将上面的mypassword替换成你的密码,server_port也是可以修改的,例如8980,method是加密方式,如果想在路由器上运行的话可以改成rc4-md5这样路由器的负荷会小一些,同时加密的安全性也不错。

创建 shadowsocks 服务, 随系统启动

vim /usr/lib/systemd/system/shadowsocks.service

写入下面的内容

[Unit]
Description=Shadowsocks Server
Documentation=https://github.com/shadowsocks/shadowsocks
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
#设置启动时的配置文件,根据自己的需求改.
ExecStart=/usr/bin/ssserver -c /etc/shadowsocks-libev/config.json
-d start
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/usr/bin/ssserver -d stop

[Install]
WantedBy=multi-user.target

保存退出

启动服务

systemctl enable shadowsocks
systemctl start shadowsocks

配置防火墙

firewall-cmd –permanent –add-port=8989/tcp
firewall-cmd –permanent –add-port=8989/udp
firewall-cmd –reload

到这里基本就可以了。客户端的使用方法还请自行搜索一下。

参考文章:
Centos 7安装配置Shadowsocks
CentOS 7 安装 Shadowsocks 科学上网

因时间有点久,搭建的过程主要是参考资料以及查看配置来写的,如果有错误,还请原谅。

附多用户的配置格式:

{
“server”:”0.0.0.0″,
“local_address”:”127.0.0.1″,
“local_port”:1080,
“timeout”:600,
“method”:”aes-256-cfb”,
“port_password”:
{
“8991”:”A用户密码”,
“8992”:”B用户密码”
}
}

发布者

ryantech

仍然是一个程序员