项目主页: 基于ss-panel-v3-mod的 UI 修改版
环境CENTOS 7 最小化安装,默认关闭selinux及firewalld
宝塔面板及LNMP环境
这个就不多说了
下载程序
cd 网站根目录
git clone -b master https://github.com/NimaQu/ss-panel-v3-mod_Uim.git tmp && mv tmp/.git . && rm -rf tmp && git reset --hard
安装依赖
wget https://getcomposer.org/installer -O composer.phar
php composer.phar
php composer.phar install
chmod -R 755 ${PWD}
chown -R www:www ${PWD}
mv tool/alipay-f2fpay vendor/
mv -f tool/cacert.pem vendor/guzzle/guzzle/src/Guzzle/Http/Resources/
mv -f tool/autoload_classmap.php vendor/composer/
配置文件
cp config/.config.php.example config/.config.php
修改配置文件(也可以在宝塔页面修改,后面章节有说明)
vi config/.config.php
伪静态设置
宝塔-网站-设置-伪静态,添加如下
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
网站目录设置
将运行目录改为/public
修改目录权限将 storage 目录权限改为 www 777
禁用函数
宝塔用户可能会在超过某一数量节点的时候出现 ~Undefined offset :0 in 你的网站路径
这个错误, 这个问题会导致后端无法进行连接,可以按照以下方法解决
宝塔-软件管理-php7.1设置
在禁用函数一栏找到 system
和 proc_open
去除它,(我多去除了两个,proc_get_status
和 popen
)
在性能调整中,把 PHP 运行模式设置为 静态
在配置文件中 按 Ctrl+F 搜索 display_errors = 改为 Off 后保存
导入数据库
Github项目主页下载,https://github.com/NimaQu/ss-panel-v3-mod_Uim
下载后解压,找到数据库文件 sql/glzjin_all.sql
宝塔-数据库-导入
添加计划任务
执行 crontab -e 命令, 添加以下四条
30 22 * * * php /网站目录/xcat sendDiaryMail
0 0 * * * php -n /网站目录/xcat dailyjob
*/1 * * * * php /网站目录/xcat checkjob
*/1 * * * * php /网站目录/xcat syncnode
创建管理员并同步用户
php xcat createAdmin //创建管理员
php xcat syncusers //同步用户
php xcat initQQWry //下载IP解析库
php xcat resetTraffic //重置流量
php xcat initdownload //下载ssr程式
其他计划任务可选
如果需要自动备份,可添加以下一条 (此例为每20分钟备份1次)
*/20 * * * * php -n /网站目录/xcat backup
如果需要财务报表,可选添加以下三条
5 0 * * * php /网站目录/xcat sendFinanceMail_day
6 0 * * 0 php /网站目录/xcat sendFinanceMail_week
7 0 1 * * php /网站目录/xcat sendFinanceMail_month
如果需要检测被墙,添加以下一条
*/1 * * * * php /网站目录/xcat detectGFW
如果要用到radius,需要添加下面这三条
*/1 * * * * php /网站目录/xcat synclogin
*/1 * * * * php /网站目录/xcat syncvpn
*/1 * * * * php -n /网站目录/xcat syncnas
其他可添加命令
参考 /www/wwwroot/ss.augustdoit.bid/app/Command 下的php文件
前端更新
git stash
git pull
php xcat update
安装libsodium以支持更多的加密方式
timedatectl set-timezone Asia/Shanghai
yum -y groupinstall "Development Tools"
yum -y install wget vim
wget https://github.com/jedisct1/libsodium/releases/download/1.0.16/libsodium-1.0.16.tar.gz
tar xf libsodium-1.0.16.tar.gz && cd libsodium-1.0.16
./configure && make -j2 && make install
echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig
下载后端
cd
yum -y install python-setuptools
easy_install pip
git clone https://github.com/wewall/shadowsocks
cd shadowsocks
pip install -r requirements.txt
cp apiconfig.py userapiconfig.py
cp config.json user-config.json
配合前端填写userapiconfig.py:
vi userapiconfig.py
数据库对接:
NODE_ID = %//替换为前端对应的nodeid
API_INTERFACE = 'glzjinmod'
MysqlMYSQL_HOST = '%'//替换为前端对应的数据库地址
MYSQL_PORT = 3306
MYSQL_USER = '%'
MYSQL_PASS = '%'
MYSQL_DB = '%'
MANAGE_BIND_IP = '%'//替换为前端管理地址
WEBAPI对接:
NODE_ID = %//替换为前端对应的nodeid
WEBAPI_URL = '%' //替换为你的网站非CDN地址
WEBAPI_TOKEN = '%'
可选项:
MANAGE_PASS = '%'//替换为一个复杂的密码
保存后启动后段测试是否可以运行:
python server.py
则有问题根据报错信息来找原因。
确定没问题后,结束,输入如下命令将程序放到后台运行:
./run.sh
方法一
vi /etc/rc.d/rc.local
# 加入如下字段
sh /root/shadowsocks/run.sh
#赋予可执行权限
chmod +x /etc/rc.d/rc.local
#然后重启
reboot
方法二
配置supervisord
yum install supervisor -y
systemctl enable supervisord
wget https://saku.moe/resource/supervisord.conf -O /etc/supervisord.conf
systemctl start supervisord
默认仓库应该是 /root/shadowsocks ,如果不是,请自行修改 supervisord.conf 最底部 [program:mu] 中的 directory
参考 SSR后端优化
补充
dgchost 及 linode 小鸡安装出错解决办法
后端安装不了easy_install pip,用下面方法
yum -y install epel-release
yum install python-pip
如果pip install -r requirements.txt超时
pip install -r requirements.txt --default-timeout=100
或者
pip install -r requirements.txt --trusted-host pypi.python.org