CentOS 7 搭建 Shadowsocks (Node.js 版)
yum install npm
npm -version
node -v
npm install npm -g
npm install -g n
n stable
npm -v
sudo npm install -g shadowsocks
nano /usr/local/lib/node_modules/shadowsocks/config.json
{
"server":"127.0.0.1",
"server_port":8388,
"local_address":"127.0.0.1",
"local_port":1080,
"password":"pass",
"timeout":600,
"method":"aes-256-cfb"
}
其中
server: 监听地址,在此填入 IPv4 公共地址。如果服务器支持 IPv6 ,可以填入两个英文冒号 :: 。
server_port: 监听端口,大多数情况下可以不用更改,但是推荐选取另外一个未被使用的端口号,例如 8389。
因为我们使用服务器的 Shadowsocks 来代理我们的流量,local_address 和 local_port 可以不必更改。
password: 选一个安全的密码。
timeout: 保持原样即可。
method: 推荐选择 aes-256-cfb 或 aes-128-cfb 这两种加密方式。
编辑好之后,依次按下 Ctrl+X、Y、Enter 来确认保存更改。
firewall-cmd --state
nohup ssserver > /data/app/logs/ssserver.log &
tail -100f /data/app/logs/ssserver.log
ufw allow 8388
ufw 安装(http://crabdave.iteye.com/blog/2314899)
https://blog.netsh.org/posts/vps-shadowsocks-nodejs_2031.netsh.html
经常发现会出现进程消失的问题,解决办法:
创建一个脚本,使用定时任务,每5分钟检查一次,看进程是否存在,如果不存在,则重新启动。
vi keepRunSsserver.sh
if test $( pgrep -f sss | wc -l ) -eq 0
then
echo "进程不存在"
nohup /usr/local/bin/ssserver > /data/app/logs/ssserver.log &
ufw allow 8388
else
echo "存在进程"
fi
crontab -e
*/5 * * * * /root/keepRunSsserver.sh
保存退出!