0%

宝塔面板+SSRPanel前后端安装记录

前言

之前使用的是ss-panel-v3-mod,功能挺多,但是觉得太臃肿了,最近又看到了这个SSRPanel,体验了一把,觉得挺不错,这里把搭建过程记录下来,供我以后参考或者帮助到其他有需要的人。

这里使用了宝塔面板是为了降低难度,能用宝塔配置就用宝塔配置,能不输入命令就不输入命令。

在安装过程中要记下一些重要的文本:

  1. 宝塔面板的登录地址;
  2. 宝塔面板的用户名和密码;
  3. 网站的根目录;
  4. 数据库名、用户名、密码;
  5. 网站管理员账号、密码。

搭建环境介绍

本文所使用的机器配置:

  • Provider: BandwagonHOST
  • Operating system: Centos 7 x86_64 bbr
  • RAM: 512 MB
  • Disk: 20GB

SSRPanel环境要求:

  • PHP 7.1 (必须)
  • MySQL 5.5 (推荐5.6+)
  • 内存 1G+
  • 磁盘空间 10G+

系统初始配置

1
2
3
yum -y install epel-release
yum -y update
yum -y groupinstall "Development Tools"

宝塔面板的安装及配置

使用宝塔面板的好处

  • 可视化管理;
  • 一键安装网站环境;
  • 自动更改时区以及校时(SSRPanel要求多节点之间时区相同,时间一样);
  • 端口管理方便。

安装宝塔面板

首先要安装宝塔面板啦,复制下面这条命令在控制台中执行就行了。

1
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh

安装完成之后你会得到一个访问网址,以及用户名和密码,在浏览器中打开给定网址就能访问宝塔面板的控制台了。

安装LNMP

第一次打开宝塔控制台时会提示你安装网站运行环境,按图选择即可(稍后补图)。

PHP版本选择7.1。

SSRPanel推荐使用MySQL 5.6+,低内存服务器就老老实实选择MySQL 5.5吧。

添加网站

宝塔面板->网站->添加站点中来添加一个新的站点。配置的信息都很重要,要记下来。

  • 域名:填写你的域名;
  • 根目录:你的网站文件在服务器上的位置,要记住自己网站的根目录;
  • FTP:是否创建FTP用户,可根据需求选择;
  • 数据库:类型选择MySQL,编码选择utf8mb4
  • 数据库设置:数据库的用户名和密码;
  • PHP版本:PHP-71。



导入数据库

宝塔面板->数据库中,找到你刚刚创建的数据库,点击导入->从本地上传

数据库文件位于sql/db.sql,你可以从Github上下载到。

SWAP配置

SSRPanel依赖phpfileinfo扩展,phpfileinfo的安装对内存容量有一定的要求,如果内存太小的话会安装失败,所以小内存机器可以通过添加Swap的方式增大可用内存容量。

宝塔面板->首页->Linux工具箱->Swap/虚拟内存中,添加Swap为2048 MB



安装phpfileinfo扩展

宝塔面板->软件管理->PHP-7.1->安装扩展中,找到名为fileinfo的扩展并安装。



删除禁用函数

宝塔面板->软件管理->PHP-7.1->禁用函数中,删除proc_开头的所有函数。



网站配置

拉取文件

在之前,我们添加网站的时候已经设置了网站的根目录,现在我们在服务器控制台里输入命令,从Github拉取SSRPanel的文件。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 进入网站根目录
# 注意替换你自己的网站路径
cd www/wwwroot/baidu.com

# 拉取代码
git clone https://github.com/ssrpanel/SSRPanel.git tmp
mv tmp/.git .
rm -rf tmp
git reset --hard

# 更改权限
chown -R www:www storage/
chmod -R 755 storage/

# 安装依赖
php composer.phar install
php artisan key:generate

编写配置文件

因为网站需要用到MySQL数据库,这一步我们配置数据库连接信息。

.env.example复制一份命名为.env,按需更改配置。

可以在宝塔面板->文件里操作,也可以在服务器控制台操作。

1
2
cp .env.example .env
vi .env
  • DB_HOST: 数据库地址,如果在本机就是127.0.0.1;
  • DB_PORT: 数据库端口,默认3306;
  • DB_DATABASE: 数据库名;
  • DB_USERNAME: 数据库用户名;
  • DB_PASSWORD: 数据库密码;
  • REDIRECT_HTTPS: 是否启用HTTPS。

运行目录

宝塔面板->网站->设置->运行目录->选择/public



伪静态

宝塔面板->网站->设置->伪静态->选择laravel5->保存



定时任务

SSRPanel需要定时任务来完成自动维护。

1
2
3
4
5
6
7
8
9
# 必须给 www 用户创建一个目录,否则没法用其身份去运行crontab
mkdir /home/www && chown -R www:www /home/www/

# 注意运行权限,必须跟SSRPanel项目权限一致,否则出现各种莫名其妙的错误
# 宝塔默认生成的用户是www
crontab -e -u www

# crontab加入下面的命令,自行替换路径
* * * * * php /www/wwwroot/baidu.com/artisan schedule:run >> /dev/null 2>&1

打开网站

在打开网站之前,要先重启一下服务器,使网站环境重载配置。

如果以上步骤都没出错,那么现在在浏览器输入你的域名就能访问网站了。

默认登录账号是admin,密码是123456



修改管理员密码

点击右上角头像->个人设置->修改密码

添加节点

SSRPanel->管理面板->节点管理->添加节点

  • 基础信息
    • 节点名称:起个名字;
    • 绑定域名:如果用域名解析可以填,不过没有可以忽略;
    • SSH端口:填服务器的SSH端口,用于TCP阻断检测;
    • IPV4地址:填SSR服务器的IP地址;
    • 标签:起一个标签名字,用户是通过标签与服务器关联起来的
  • 扩展信息
    • 类型:Shadowsocks(R);
    • 加密方式、协议、协议参数、混淆、混淆参数:可以改,但请务必与后端保持一致

填好之后保存,在节点列表你可以看到节点id,记下来,待会儿写在后端配置文件里。

SSR后端搭建

安装依赖

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# libsodium
cd /root
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

# 拉取SSR文件
cd /root
git clone https://github.com/ssrpanel/shadowsocksr.git
cd shadowsocksr

# 安装依赖
sh ./setup_cymysql2.sh
pip install -r requestment.txt

编辑数据库连接信息

1
vi usermysql.json
  • host: 数据库地址;
  • port: 数据库端口,默认3306;
  • user: 数据库用户名;
  • password: 数据库密码;
  • db: 数据库名;
  • node_id: 节点id,填之前在SSRPanel里添加的节点id

编辑节点配置

1
vi user-config.json

前后端保持一致即可。

运行

1
2
3
4
5
6
7
8
9
10
11
12
13
# 试运行,如果没有错误输出则可以用Ctrl+C关闭,然后后台运行
python server.py

# 后台运行
bash run.sh

# 其他命令
# 运行并记录日志
sh logrun.sh
# 停止
sh stop.sh
# 查看日志
sh tail.sh

放行端口

宝塔面板->安全->防火墙中可以放行端口,支持放行端口范围,如: 3000:3500。

  • 443: SSL端口,也可以用作单端口;
  • 10000-20000: SSRPanel默认用户端口范围。



SSR开机启动

1
2
3
4
5
chmod +x /etc/rc.d/rc.local
vi /etc/rc.d/rc.local

# 加入下面的命令,保存
bash /root/shadowsocksr/run.sh

后记

安装完成之后SSRPanel就可以和后台的SSR联动起来了,SSRPanel和宝塔面板的其他功能要自己摸索摸索。

可以自己设置网站备份、数据库备份的功能。

如果过程中遇到问题可以去看看SSRPanel的Wiki,Wiki写的内容很多,值得一看。

小问题

前端和后端不在一台服务器上

为了前端与后端能正常通信,需要在前端服务器上修改MySQL的访问权限,并且放行3306端口。

宝塔面板->数据库->权限中修改访问权限为指定IP或者所有人,指定IP是一种更为安全的方式。

放行端口的操作可以参考上面。

参考