本文记录了在vultr的服务器上部署ssr的前端ss-panel及后端的全部过程。
配置lnmp环境
登录vps,获取lnmp安装包1
2
3
4wget http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz
tar xvzf lnmp1.2-full.tar.gz
cd lnmp1.2-full
./install.sh
进行安装。分别输入:
- 数据库密码
- n(不开启InnoDB)
- 2 (安装mysql 5.5.42)
- 5 (安装php 5.6.9)
- 1 (不安装内存分配)
设置虚拟主机
添加一个虚拟机1
lnmp vhost add
进行设置,填写内容如下:
- 域名
- 带www的域名
- n(allow rewrite rule?)
- n(allow access_log?)
- n(create datebase?)
现在来对nginx做一些设置,进入以下路径:
1 | vi /usr/local/nginx/conf/vhost/你的域名.conf |
在access_log off之前添加以下代码:1
2
3location / {
try_files $uri $uri/ /index.php$is_args$args;
}
接着往上看到root那一行在后面添加一个public。
ss-panel的下载及安装
1 | cd /home/wwwroot/你的站点域名 |
对网站目录进行修改:1
2
3
4chattr -i .user.ini
mv .user.ini public
cd public
chattr +i .user.ini
重启nginx1
service nginx restart
配置数据库
通过浏览器打开我们的phpmyadmin:http://你VPS的IP/phpmyadmin/ ,进入以下目录新建一个用户并为这个用户创建一个同名的数据库。1
2
3
4
5
6
7
8用户->添加用户
---
user name: 用户名
host: %
密码: 密码
重新输入: 密码
生成密码: 点击生成
勾选 【创建与用户同名的数据库并授予所有权限】
打开ss-panel-v3-mod的官方Github:https://github.com/esdeathlove/ss-panel-v3-mod ,将程序的zip压缩包下载到本地。解压压缩包找到sql目录中的glzjin_all.sql1
2
3导入->要导入的文件
---
将上面的文件导入。
配置ss-panel
执行,以下命令,将#database数据库配置
中的信息进行更新。注意,本配置文件可根据需求自行更改!1
2
3
4cd /home/wwwroot/你站点的域名
php composer.phar install
cp config/.config.php.example config/.config.php
nano config/.config.php
给ss-panel-v3-mod创建一个管理员账号1
php -n xcat createAdmin
同步一下用户1
php xcat syncusers
修改防火墙1
vi /etc/sysconfig/iptables
修改为以下:1
2-A INPUT -s 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
设置几个定时任务确保ss-panel-v3-mod的长期稳定运行。1
2yum install -y vixie-cron
crontab -e
插入以下命令:1
2
3
4
5
630 22 * * * php /home/wwwroot/你的站点域名/xcat sendDiaryMail
*/1 * * * * php /home/wwwroot/你的站点域名/xcat synclogin
*/1 * * * * php /home/wwwroot/你的站点域名/xcat syncvpn
0 0 * * * php -n /home/wwwroot/你的站点域名/xcat dailyjob
*/1 * * * * php /home/wwwroot/你的站点域名/xcat checkjob
*/1 * * * * php -n /home/wwwroot/你的站点域名/xcat syncnas
创建后端
安装后端工具及服务1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17cd /root
yum install python-setuptools && easy_install pip
yum install git
yum -y groupinstall "Development Tools"
wget https://github.com/jedisct1/libsodium/releases/download/1.0.10/libsodium-1.0.10.tar.gz
tar xf libsodium-1.0.10.tar.gz && cd libsodium-1.0.10
./configure && make -j2 && make install
echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig
git clone -b manyuser https://github.com/glzjin/shadowsocks.git
cd shadowsocks
yum -y install python-devel
yum -y install libffi-devel
yum -y install openssl-devel
pip install -r requirements.txt
cp apiconfig.py userapiconfig.py
cp config.json user-config.json
编辑userapiconfig.py这个文件:1
vi userapiconfig.py
修改以下内容:1
2
3
4
5
6
7
8
9API_INTERFACE = 'glzjinmod' # glzjinmod, modwebapi
NODE_ID = 3 (编辑为前端的实际节点id号)
MYSQL_HOST = '127.0.0.1' (如果不在本机,请配置为数据库所在ip)
MYSQL_PORT = 3306
MYSQL_USER = '-----' (数据库用户的用户名,不是登录名)
MYSQL_PASS = '-----' (数据库用户的密码)
MYSQL_DB = '-----' (数据库名称)
关闭防火墙1
service iptables stop
运行后端:1
./run.sh
其他命令:1
2
3
4.logrun.sh(后台运行(输出log,ssh窗口关闭后也继续运行))
./tail.sh(后台运行时查看运行情况)
./stop.sh(停止运行)
注:通过脚本运行默认日志会保存在根目录的ssserver.log,可手动查看
安装bbr加速
1 | wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh |
添加优化内容,进入以下文件:1
nano /etc/sysctl.conf
粘贴以下内容1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22#TCP配置优化(不然你自己根本不知道你在干什么)
fs.file-max = 51200
#提高整个系统的文件限制
net.core.rmem_max = 67108864
net.core.wmem_max = 67108864
net.core.netdev_max_backlog = 250000
net.core.somaxconn = 4096
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.ip_local_port_range = 10000 65000
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_mem = 25600 51200 102400
net.ipv4.tcp_rmem = 4096 87380 67108864
net.ipv4.tcp_wmem = 4096 65536 67108864
net.ipv4.tcp_mtu_probing = 1
net.ipv4.tcp_congestion_control = bbr
#END OF LINE
应用1
sysctl -p
重启ssr
安装锐速加速
更新内核
查看系统内核版本1
uname -r
准备好内核文件执行安装:1
2rpm -ivh http://xz.wn789.com/CentOSkernel/kernel-firmware-2.6.32-504.3.3.el6.noarch.rpm
rpm -ivh http://xz.wn789.com/CentOSkernel/kernel-2.6.32-504.3.3.el6.x86_64.rpm --force
安装完成后,查看是否安装成功1
2
3
4
5
6rpm -qa | grep kernel
返回值为:
kernel-firmware-2.6.32-642.el6.noarch
dracut-kernel-004-409.el6.noarch
kernel-2.6.32-504.3.3.el6.x86_64
kernel-2.6.32-642.el6.x86_64
重启VPS,再次查看系统内核,可以发现内核已经更新
安装加速
下载一键脚本1
wget -N --no-check-certificate https://raw.githubusercontent.com/wn789/serverspeeder/master/serverspeeder.sh
执行脚本1
2chmod +x serverspeeder.sh
bash serverspeeder.sh
安装完成。常见的命令有:1
2
3
4
5
6
7
8
9service serverSpeeder start #启动
service serverSpeeder stop #停止
service serverSpeeder reload #重新加载配置
service serverSpeeder restart #重启
service serverSpeeder status #状态
service serverSpeeder stats #统计
service serverSpeeder renewLic #更新许可文件
service serverSpeeder update #更新
chattr -i /serverspeeder/etc/apx* && /serverspeeder/bin/serverSpeeder.sh uninstall -f #卸载
进入管理员界面增加节点
添加节点的时候,节点名称务必要是这样的:“伯力 – Shadowsocks”(-号前后都有一个空格才行),然后就是节点地址、加密方式、流量比例、节点状态、节点描述这些都是必填的。此处略。
一键脚本安装地址:
wget -N –no-check-certificate https://softs.fun/Bash/ssr.sh && chmod +x ssr.sh && bash ssr.sh
备用脚本:
wget -N –no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/ssr.sh && chmod +x ssr.sh && bash ssr.sh