一台新的VPS,如何搭建shadowsocks多用户后端+whmcs前端?曾经折腾失败,最近又重新折腾了许久终于成功,把过程记录一下。我的环境是centos6,安装所有组件之前先升级一下VPS环境!SSH登录VPS:
yum -y update
or
apt-get update -y
然后安装wdcp网站环境:
wget http://dl.wdlinux.cn:5180/lanmp_laster.tar.gz
tar zxvf lanmp_laster.tar.gz
sh install.sh
接下来按照提示操作到wdcp安装完毕。(时间有点长)
一、安装shadowsocks多用户后端shadowsocks-manyuser
项目地址:https://github.com/mengskysama/shadowsocks-rm/tree/manyuser
1.
先安装需要的环境依赖
CentOS:
yum install m2crypto python-setuptools
easy_install pip
Debian / Ubuntu:
apt-get install python-pip python-m2crypto
2.安装cymysql
pip install cymysql
3、安装shadowsocks-manyuser
git clone -b manyuser https://github.com/mengskysama/shadowsocks.git
如果提示没有安装git,则先安装git:
yum -y install git
通过phpmyadmin创建数据库shadowsocks(名称随意),然后将shadowsocks-manyuser文件夹中的shadowsocks.sql导入到你创建的数据库中。
4、配置数据库连接
cd /用户名/shadowsocks/shadowsocks 打开Config.py所在文件夹
编辑Config.py文件:vi Config.py,修改对应的端口、密码等等操作。如下格式
#Config
MYSQL_HOST = '127.0.0.1' #这一行是服务器IP,127.0.0.1表示本机
MYSQL_PORT = 3306 #数据库端口号
MYSQL_USER = 'ss' #数据库用户名
MYSQL_PASS = 'ss' #数据库密码
MYSQL_DB = 'shadowsocks' #数据库名称
MANAGE_PASS = 'ss233333333'
#if you want manage in other server you should set this value to global ip
MANAGE_BIND_IP = '127.0.0.1'
#make sure this port is idle
MANAGE_PORT = 23333
5、开启服务
python server.py
如上图所示就算安装成功了。
如果放在后台运行则可以
nohup python server.py &
nohup用法可以百度,也可以用screen或者配置supervisor进程守护。我是centos用的screen,方法如下:
screen -S shadowsocks
cd /root/shadowsocks/shadowsocks/
python server.py
此时按住Ctrl+a,然后按d退出就可以了。
查看screen运行任务可以screen -ls可以看到刚才创建的ss任务在运行。
如果需要恢复执行:
screen -r shadowsocks
当然,出意外的话killall也是可以。
Shadowsocks开机自动启动并后台运行
vi /etc/rc.local
用vi编辑器添加以下内容(先按键盘Ins键,切换到编辑模式):
cd /root/shadowsocks/shadowsocks
screen -dmS Shadowsocks python server.py
然后Esc退出编辑,Shift+;打出英文半角冒号,然后wq,回车,保存文件。
(screen -dmS Shadowsocks python server.py,也就是让程序运行后就在后台了。)
至此多用户SS后端安装完毕。
debian下使用supervisor进程守护的方法
安装supervisor
apt-get install supervisor
配置supervisor进程守护
在目录/etc/supervisor/conf.d/下, 新建一个文件,名字:shadowsocks.conf
在shadowsocks.conf文件里编辑添加:
[program:shadowsocks]
command=python /root/shadowsocks/shadowsocks/server.py -c /root/shadowsocks/shadowsocks/config.json #/此处目录请自行修改
autorestart=true
user=root
修改以下文件
/etc/profile
/etc/default/supervisor
在文件结尾处添加以下3行内容
ulimit -n 51200
ulimit -Sn 4096
ulimit -Hn 8192
启动supervisor
service supervisor start #启动
supervisorctl reload #重载
debug查看连接日志等
supervisorctl tail -f shadowsocks stderr #Ctrl+C 取消查看
centos使用supervisor
安装easy_install supervisor
运行echo_supervisord_conf测试是否安装成功。
创建配置文件:
echo_supervisord_conf > /etc/supervisord.conf
修改配置文件:
在supervisord.conf最后增加:
[program:shadowsocks]
command = python /root/shadowsocks/shadowsocks/server.py -c /root/shadowsocks/shadowsocks/config.json
autostart=true
autorestart=true
startsecs=3
使用指定配置文件启动:/usr/bin/supervisord -c /etc/supervisord.conf/
-c 表示配置文件的路径,读取这里个配置文件,之前也是可以根据自己的情况放在不同的文件夹下
修改配置文件之后:supervisorctl reload 重载 服务重新启动
debug查看连接日志:supervisorctl tail -f shadowsocks stderr #Ctrl+C 取消查看
设置supervisord开机启动
编辑文件:vi /etc/rc.local
在末尾另起一行添加supervisord,保存退出(和上文类似)。
另centos7还需要为rc.local添加执行权限
chmod +x /etc/rc.local
至此运用supervisord控制shadowsocks开机自启和后台运行设置完成
常用命令
控制命令基本都通过supervisorctl执行,输入help可以看到命令列表。这是一些常用命令:
获得所有程序状态 supervisorctl status
关闭目标程序 supervisorctl stop spider
启动目标程序 supervisorctl start spider
关闭所有程序 supervisorctl shutdown
二、安装shadowsocks多用户前端whmcs