ss-panel v3前端与ss-manyuser后端配置supervisord守护完整教程
这是一个sspanel v3 配置的完整教程,我用的是lnmp框架,当然lamp也是可以的,安装lnmp的过程我就不说了。
一,安装ss-panel
首先我们进入网站目录
cd /home/wwwroot/ss.iforday.com
git clone https://github.com/orvice/ss-panel.git
cp -R ss-panel/. ./
cp .env.example .env
vim .env
按照提示输入你数据库信息和站点信息,保存
如果你启用了redis,那么要安装redis
Centos7:(Centos6要自行安装epel源,我懒得写了)
wget -r --no-parent -A 'epel-release-*.rpm' http://dl.fedoraproject.org/pub/epel/7/x86_64/e/ rpm -Uvh dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-*.rpm yum install redis -y
Debian/Ubuntu:
apt-get install redis-server -y
然后启动redis
systemctl start redis.service
测试redis
redis-cli ping
看到PONG就是测试通过
安装composer
curl -sS https://getcomposer.org/installer | php php composer.phar install
如果像这样报错
可以试试使用php composer.phar update
把目录下的db-160305.sql(文件名不一定,大致这样)导入数据库
可以通过phpmyadmin实现
添加管理员账号:
php xcat createAdmin
按提示填写信息即可
然后给文件权限:
chmod -R 777 storage
lnmp需要给www用户访问目录权限:
chown -R www /home/wwwroot/ss.iforday.com/
到这里我们对网站目录下的配置就完成了
下面我们对nginx的配置进行修改
我们进入nginx的conf目录,修改网站的配置文件
在root /home/wwwroot/ss.iforday.com后面加入/pubilc
在下面加入
location / { try_files $uri $uri/ /index.php$is_args$args; }
保存退出,重启nginx:
service nginx reload
这时候前端已经搭好,你的网站已经可以正常访问,下面我们进行后端(manyuser)的配置
二,安装shadowsocks manyuser
首先要授权远程访问mysql:
在数据库所在的机器执行mysql -uroot -p
输入你的数据库密码,执行use mysql;
再输入:
grant all privileges on *.* to '数据库名'@'manyuser所在ip'identified by '密码' with grant option;
按Ctrl + C 退出mysql控制台
shadowsocks-manyuser有许多版本:
ssr版:
git clone -b manyuser https://github.com/breakwa11/shadowsocks.git
rm版:
git clone -b manyuser https://github.com/mengskysama/shadowsocks-rm.git
普通版:
git clone -b manyuser https://github.com/mengskysama/shadowsocks.git
我推荐使用shadowsocks-rm
我们下载shadowsocks-rm的源码
git clone -b manyuser https://github.com/mengskysama/shadowsocks-rm.git
安装pip包管理器
Centos:
yum install python-pip -y
Debian:
apt-get install python-pip -y
安装cysql:
pip install cymysql
进入文件夹:
cd shadowsocks-rm cd shadowsocks
修改config:
vim config.py
将刚才在sspanel配置文件中填的数据库地址填到这,下面的SS_METHOD是加密方式,可以自行修改
然后执行python servers.py
像这样就是成功了,如果不行,多半是端口没开或者sspanel中没给流量...
如果你感觉 root:db loop 看起来不爽,你可以在config.py下面找到LOG_ENABLE,改成True就不会出现了
然后你会发现ssh一断开,服务端也就关闭了,所以我们通过screen保持他在后台运行
screen -S ss python servers.py
在这里我们还需要打开iptables的防火墙:
举个栗子,通过下面的代码可以打开10000到20000之间的所有端口
iptables -I INPUT -p tcp -m tcp --dport 10000:20000 -j ACCEPT iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT
然后别忘了保存和重启iptables
service iptables save
service iptables restart
ssr版的manyuser在第一层文件夹下,其他版本都在第二层下,配置过程大同小异,我就不写了
shadowsocks-rm和ssr默认是支持UDP的,普通的manyuser对UDP支持不好,属于NAT3,并且需要手动开启,不推荐使用...
三,用Supervisor守护ss-manyuser进程
1.先安装supervisor
由于前面配置ss-manyuser已经安装了epel和python-pip,所以这里就不安装了
pip install supervisor
2.创建配置文件:
echo_supervisord_conf > /etc/supervisord.conf
如果遇到下面这样的问题,可以手动安装meld3
方法如下:
git clone https://github.com/Supervisor/meld3 cd meld3 python setup.py install
然后再执行echo_supervisord_conf > /etc/supervisord.conf
就行了
3.修改配置文件
vim /etc/supervisord.conf
在最后面加入
[program:ss] command = python /root/shadowsocks-rm/shadowsocks/servers.py user = root autostart = true autorestart = true
注意把python /root/shadowsocks-rm/shadowsocks/servers.py改成你manyuser所在的路径
4.为了方便管理,我们可以添加到添加自动启动服务:
vim /etc/init.d/supervisord
#!/bin/bash # # supervisord This scripts turns supervisord on # # Author: Mike McGrath <mmcgrath@redhat.com> (based off yumupdatesd) # # chkconfig: - 95 04 # # description: supervisor is a process control utility. It has a web based # xmlrpc interface as well as a few other nifty features. # processname: supervisord # config: /etc/supervisord.conf # pidfile: /var/run/supervisord.pid # # source function library . /etc/rc.d/init.d/functions RETVAL=0 start() {echo -n $"Starting supervisord: "daemon supervisordRETVAL=$?echo[ $RETVAL -eq 0 ] && touch /var/lock/subsys/supervisord } stop() {echo -n $"Stopping supervisord: "killproc supervisordecho[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/supervisord } restart() {stopstart } case "$1" instart)start;;stop)stop;;restart|force-reload|reload)restart;;condrestart)[ -f /var/lock/subsys/supervisord ] && restart;;status)status supervisordRETVAL=$?;;*)echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"exit 1 esac exit $RETVAL
给予执行权限:
chmod +x /etc/init.d/supervisord
这样我们就可以通过service命令管理supervisord了
如果想管理ss进程,应该用supervisorctl {start|stop|restart} ss
查看ss在后台的状态:ps -ef | grep servers.py
到这你的shadowsocks分享站就已经搭完,是不是很简单~
ss-panel v3前端与ss-manyuser后端配置supervisord守护完整教程相关推荐
- manyuser是php吗,ss-panel v3前端与ss-manyuser后端配置supervisord守护完整教程
这是一个sspanel v3 配置的完整教程,我用的是lnmp框架,当然lamp也是可以的,安装lnmp的过程我就不说了. 一,安装ss-panel 首先我们进入网站目录 cd /home/wwwro ...
- BugReport:前端不能成功解析后端信息造成消息阻塞问题
文章目录 1 前端不能成功解析后端信息造成消息阻塞问题 1.1 问题记录 1.1.1 问题场景复现 1.1.2 问题业务开发情况 1.2 问题剖析 1.2.1 WebSocket协议 1.2.1.1 ...
- 前端和后端开发人员比例_前端开发人员vs后端开发人员–实践中的定义和含义
前端和后端开发人员比例 Websites and applications are complex! Buttons and images are just the tip of the iceber ...
- python后端开发框架加密_Flask框架实现的前端RSA加密与后端Python解密功能详解
本文实例讲述了Flask框架实现的前端RSA加密与后端Python解密功能.分享给大家供大家参考,具体如下: 前言 在使用 Flask 开发用户登录API的时候,我之前都是明文传输 username ...
- linux 的ss看进程号,linux ss命令详解
ss 是 Socket Statistics 的缩写.ss 命令可以用来获取 socket 统计信息,它显示的内容和 netstat 类似.但 ss 的优势在于它能够显示更多更详细的有关 TCP 和连 ...
- 写给刚入门的前端工程师的前后端交互指南
转自原文 写给刚入门的前端工程师的前后端交互指南 作为刚接触前端的不久的童鞋,大家都会兴奋于CSS和JS所带来漂亮界面,然而,前端工程师除了UI重构外,还有非常重要的职责在正确的区域渲染出服务端的数据 ...
- 前端登陆加密和后端解密
实现了前端对数据进行加密后传输,后端对加密的数据进行解密,然后去数据库对比.因为要解密所以采用对称加密算法.不讨论哪个对称加密算法好,这里采用DES,在实现的过程中发现要找一个js版本的DES加密,并 ...
- 购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session
原文:购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session chsakell分享了前端使用AngularJS,后端使用ASP.NE ...
- 前端php解密,转发:RSA实现JS前端加密,PHP后端解密
web前端,用户注册与登录,不能直接以明文形式提交用户密码,容易被截获,这时就引入RSA. 前端加密 需引入4个JS扩展文件,jsbn.js.prng4.js.rng.js和rsa.js. RSA L ...
最新文章
- freeCodeCamp:Find the Longest Word in a String
- oracle数据库函数和存储过程的包
- 【Android 逆向】Android 进程代码注入原理 ( 注入本质 | 静态注入和动态注入 | 静态注入两种方式 | 修改动态库重打包 | 修改 /data/app/xx/libs 动态库 )
- OpenCV安装好了,show第一个例子,找找成就感~~~
- 为什么知乎页面按Ctrl C 会自动粘贴一部份文字出来?
- fdtd算法的matlab程序,FDTD算法的Matlab程序
- IIS 6.0支持.SHTML
- 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加...
- Java 并发编程必须知道的七种锁类型以及应用
- 学渣的心酸(求职篇)
- spring boot启动加载外部配置文件
- 苹果爸爸发飙,封杀 React Native?
- Python3.4 枚举类型的使用
- 代替人工批卷?基于目标检测模型的试卷自动批阅实践
- DSP数字信号处理实验--CCS基础入门
- C语言小程序-学生成绩统计系统
- JavaEE | 可变参数
- 智点木门软件为百闰门业解决哪些问题?
- 如何让电脑计算机d盘布局,创建MSR分区,解决“由于用户电脑存在一个不支持的用于UEFI固件的硬盘布局,因此系统无法安装”...
- pyltp依存句法分析_NLP(十二)依存句法分析的可视化及图分析