LANTEN

CentOS 7 搭建 shadowsocks 服务器 VPS

2018-02-03

本文记录了作者在 CentOS 7 上搭建 shadowsocks 服务器的一些经验

准备工作

首先要有一台 CentOS 服务器,然后用 ssh 工具登录服务器
开始之前最好看一下shadowsocksr文档


环境搭建

分别执行以下命令 安装 shadowsocks 服务端

1
2
yum install python-setuptools && easy_install pip
pip install shadowsocks


配置 shadowsocks

创建一个配置文件

1
2
mkdir /shadowsocks
vi /shadowsocks/server-config.json

按下i键编辑
复制以下内容:

1
2
3
4
5
6
7
8
{
"server":"0.0.0.0",
"server_port":8388,
"local_port":1080,
"password":" password",
"timeout":600,
"method":"aes-256-cfb"
}

server 是服务器的 IP 地址

-
多端口(多用户)配置:

1
2
3
4
5
6
7
8
9
10
{
...
"port_password":{
"8388":"password1",
"8389":"password2",
"8390":"password3",
...
},
...
}

编辑完成后按下 esc 退出编辑模式 然后按住 shift 按两下 z 保存并退出编辑


开放端口

CentOS 默认打开了防火墙
你可以直接关闭它 systemctl stop firewalld
但是这样不太安全,可以使用 iptables 来管理端口

开放所需端口

1
iptables -A  INPUT -p tcp --dport 8388 -j ACCEPT

(可选)禁止某个 IP 访问

1
iptables -I INPUT -s 124.222.0.202 -j DROP


启动服务

1
ssserver -c /shadowsocks/server-config.json -d start

停止服务

1
ssserver -c /shadowsocks/server-config.json -d stop

优雅地管理你的服务器

编辑用户目录下的 bash

1
vi ~/.bash_profile

configFile 是你的 shadowsocks 配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
ssr(){
configFile='/root/shadowsocks/server-config.json'

if [[ $1 == 'start' ]];then
sudo ssserver -c ${configFile} -d start
echo "${configFile} shadowsocks服务已在后台运行"
elif [[ $1 == 'stop' ]];then
sudo ssserver -c ${configFile} -d stop
echo "${configFile} shadowsocks服务已停止运行"
elif [[ $1 == 'log' ]];then
if [[ "$2" == "" ]];then
sudo less /var/log/shadowsocks.log
echo "显示全部日志"
else
echo "-------------- start ---------------"
sudo tail -n $2 /var/log/shadowsocks.log
echo "--------------- end ----------------"
echo "显示最近 $2 条日志"
fi
else
echo "start:开始 | stop:停止 | log:查看日志"
fi
}

刷新以生效

1
source ~/.bash_profile
1
2
3
4
5
ssr start
ssr stop
ssr log
# 只显示最近10条日志
ssr log 10

end!

扫描二维码,分享此文章