centos搭建SSR(shadowsocksr)多用户并设置SSR跟随系统开机启动

20170728更新  ssr作者项目失效,所以换成了服务端获取方式由git改成站内下载,代码为原版git代码,本站未做任何改动。

这篇主要介绍了使用一个vps搭建SSR服务端并开机启动,适合想给朋友开一个端口或者几个人合租一台vps的情况。作者的git上也有相应的教程,可能他的情况太多了,教程显得不直观,刚接触的新手们容易搞混乱,比如我。。这里记录下我的设置的步骤,如果有不对的欢迎指出。当然最详细的还是看ssr作者的教程

此教程主要就是通过修改一个user-config.json文件设置端口和对应密码,实现多个人同时使用,通过把开启ssr命令加入计划任务实现开机启动。开始之前最好是会搭建单用户版的ssr,如果还没有的话可以看看这篇 利用vps安装ss加快国外网站访问速度 ,还有一键命令在centos上一键安装ssrshadowsocksr,新手也不要害怕,多做几遍自然就熟练了。

现在准备好一个没装ss的centos vps,正式开始搭建。

安装ssr

yum install git -y            //装github

git clone -b manyuser https://github.com/shadowsocksr/shadowsocksr.git    //克隆ssr到你机器上

yum install unzip -y        //安装解压软件

yum install wget -y  //下载wget

wget letxxt.com/download/shadowsocksr.zip    //下载ssr代码
unzip shadowsocksr.zip     //解压到当前目录

cd shadowsocksr     //进入ssr项目根目录

bash initcfg.sh         //初始化程序

vi user-config.json   //这里设置多用户,重要

{
  "server":"0.0.0.0",
  "server_ipv6": "[::]",
  "local_address":"127.0.0.1",
  "local_port":1080,
  "port_password":{
  "your-port1":"your-password1",   //这里替换为你自己需要的端口和密码
  "your-port2":"your-password2"
  },
  "timeout":300,
  "method":"aes-256-cfb",      //加密
  "protocol": "auth_aes128_md5",  //协议
  "protocol_param": "",
  "obfs": "tls1.2_ticket_auth",   //混淆
  "obfs_param": "",
  "redirect": "",
  "dns_ipv6": false,
  "fast_open": false,
  "workers": 1
}

cd shadowsocks       //这里进入了子目录

python server.py   //启动程序

好了,现在就算搭建完成了,客户端对应的端口,密码,加密,协议,混淆都对应usesr-config.json填好,可以试试能不能科学上网了,别忘了设置iptables

设置开机启动

vi /etc/init.d/shadowsocks   //创建一个新的文件

#!/bin/sh
# chkconfig: 2345 90 10
# description: Start or stop the Shadowsocks R server
#
### BEGIN INIT INFO
# Provides: Shadowsocks-R
# Required-Start: $network $syslog
# Required-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Description: Start or stop the Shadowsocks R server
### END INIT INFO

# Author: Yvonne Lu(Min) <[email protected]>

name=shadowsocks
PY=/usr/bin/python
SS=/root/shadowsocksr/shadowsocks/server.py
SSPY=server.py
conf=/root/shadowsocksr/user-config.json

start(){
  $PY $SS -c $conf -d start
  RETVAL=$?
  if [ "$RETVAL" = "0" ]; then
  echo "$name start success"
  else
  echo "$name start failed"
  fi
}

stop(){
  pid=`ps -ef | grep -v grep | grep -v ps | grep -i "${SSPY}" | awk '{print $2}'`
  if [ ! -z $pid ]; then
  $PY $SS -c $conf -d stop
  RETVAL=$?
  if [ "$RETVAL" = "0" ]; then
  echo "$name stop success"
  else
  echo "$name stop failed"
  fi
  else
  echo "$name is not running"
  RETVAL=1
  fi
}

status(){
  pid=`ps -ef | grep -v grep | grep -v ps | grep -i "${SSPY}" | awk '{print $2}'`
  if [ -z $pid ]; then
  echo "$name is not running"
  RETVAL=1
  else
  echo "$name is running with PID $pid"
  RETVAL=0
  fi
}

case "$1" in
'start')
  start
  ;;
'stop')
  stop
  ;;
'status')
  status
  ;;
'restart')
  stop
  start
  RETVAL=$?
  ;;
*)
  echo "Usage: $0 { start | stop | restart | status }"
  RETVAL=1
  ;;
esac
exit $RETVAL

保存完毕后执行

chmod 755 /etc/init.d/shadowsocks && chkconfig –add shadowsocks && service shadowsocks start

reboot重启下,看ssr是不是随系统一起启动了

 

2 Replies to “centos搭建SSR(shadowsocksr)多用户并设置SSR跟随系统开机启动”

发表评论

电子邮件地址不会被公开。 必填项已用*标注