V2Board是一款开源的多协议多用户管理面板,同SSPanel面板位列当前市面上使用量最大的两款机场管理面板,其中ssp面板功能更丰富、而v2b面板操作性更简单,当然在使用上都能满足大部分需求。由于v2b面板原主要开发者已失联,目前稳定版本停留在1.7.4,本文将在其分支版本的基础上进行演示,功能和支持比原版丰富些。
项目地址:https://github.com/v2board/v2board (原版)https://github.com/wyx2685/v2board (分支)
准备工作
1、服务器建议1G内存及以上硬件配置,采用Debian操作系统,网站环境是:nginx-1.20
、 mysql-5.7
、 php-7.4
,两个不同的主域名或二级域名均可(如下文的前端访问域名 v2b.sockat.net
与后端对接域名 sk.sockat.net
);
2、本文使用AMH服务器管理面板部署相关环境,关于其安装步骤参考: AMH主机管理面板安装教程
3、进入到AMH管理面板->网站->LNMP环境列表,新建或采用默认的web环境,同时勾选命令行;
4、在右上角软件商店内搜索 redis
,在缓存应用内找到redis-6.2和pecl_redis-5.3点击安装;
5、在网站内->扩展安装,找到fileinfo、opache、pcntl安装;
6、在缓存应用内、三条斜杠那找到Redis并启动,同时在所采用的环境处点击后方的安装按钮;
V2Board面板搭建
1、在AMH管理面板->网站->子域主机,新建网站/子域虚拟主机,输入主机标识、也是根目录文件名,绑定至该服务器的域名地址、多个以英文逗号隔开,绑定子目录输入 public
;
2、在AMH管理面板->数据库->创建数据库,输入数据库名称、用户名和密码,点击创建;
3、通过SSH连接到服务器,cd进入到网站根目录,同时删除默认文件,输入下列命令即可,注意替换为自己的根目录名称;
cd /home/wwwroot/lnmp01/domain/v2b/web/
rm -rf public
4、执行下列命令从 Github 克隆到当前目录(站点根目录);
##安装git wget curl
apt install git wget curl -y
##原版
git clone https://github.com/v2board/v2board.git ${PWD}
##分支
git clone https://github.com/wyx2685/v2board.git ${PWD}
5、执行下列命令安装依赖和配置V2B数据库、管理账户,同时记录好回显的管理地址和密码;
sh init.sh
6、执行下列命令给与站点目录权限,避免后面打开网站500错误,也可以在AMH管理面板中找到文件、依次找到自己的站点目录配置权限;
chown -R www:www *
7、在AMH管理界面中->网站,找到规则管理,编辑默认的amh规则或新建规则,粘贴以下伪静态规则代码并保存;
location /downloads {
}
location / {
try_files $uri $uri/ /index.php$is_args$query_string;
}
location ~ .*.(js|css)?$
{
expires 1h;
error_log off;
access_log /dev/null;
}
8、在服务器中,运行如下命令配置计划任务,注意替换为自己的站点目录路径;
amh amcrontab run_php lnmp01 php-7.4 /home/wwwroot/lnmp01/domain/v2b/web/artisan schedule:run
9、在AMH面板界面中,搜索supervisor软件进行安装,同时添加队列命令,输入名称、站点目录路径,启动命令输入 php artisan horizon
;
10、在AMH面板中搜索amssl安装,通过此软件进行自定义配置或一键申请SSL证书,弄好后即可通过域名访问v2board面板,输入第五步回显的管理端信息即可访问后台;
节点后端对接
1、在v2b管理后台->系统配置->节点,通讯密钥处自定义一段16位的密码(字母数字组成即可);
2、在权限组管理添加1个分组、订阅管理中添加1个订阅,订阅信息根据需求填写、包含刚才的权限组即可,用户管理中把管理员或新增个普通用户、分配到刚才添加的订阅内,确保该用户有权限使用该订阅;
3、在节点管理中,左上方 + 号可以添加Shadowsocks、VMESS、VLESS、TROJAN和Hysteria五种协议的节点,其中VLESS和Hysteria协议在分支面板中、并需要搭配支持这两种协议的后端程序才能对接成功,这里以新增SS节点举例:
说明:自定义节点名称、流量扣费倍率、权限组选择刚才添加的、节点IP地址或连接地址、其中连接端口代表客户端连接用的端口、服务端口代表后端采用的端口(确保该端口在后端服务器中未被占用且防火墙已放行该端口),当该节点是直连节点时,连接和服务端口保持一样即可。
4、进入到后端节点服务器中、该服务器可以跟面板处于同一台服务器也可分属不同的服务器,建议采用不同的服务器、且硬件配置无需太高512M内存即可,输入下列命令安装后端程序;
##XrayR原版一键脚本
wget -N https://raw.githubusercontent.com/XrayR-project/XrayR-release/master/install.sh && bash install.sh
##XrayR魔改版一键脚本|v2b分支配套脚本
wget -N https://raw.githubusercontent.com/wyx2685/XrayR-release/master/install.sh && bash install.sh
5、这里以原版为例,安装好脚本后命令行执行: nano /etc/XrayR/config.yml
编辑配置文件,把其中的面板类型改成“NewV2board”、对接域名改成自己的后端域名、服务端密钥、节点ID以及节点协议类型,找到EnableREALITY项把后面的true改成false即可;
6、修改后保存回到命令行,输入 xrayr 进入一键脚本管理界面,输入4 启动xrayr后端,正常启动后在v2b后台也可以看到状态变成橙色,此时已对接完成通过客户端检查网络是否畅通即可。
V2Board配置前后端分离主题|可选功能
1、V2Board面板支持把用户访问的前端、管理后台分别部署为不同的网站,或者不同的服务器上面,这里采用V2b-Theme-Sleek开源主题演示,主题源码地址:https://github.com/binglog/V2b-Theme-Sleek
2、准备一个提供给用户访问的域名,在原服务器或其它服务器中新建个网站,在网站根目录中执行下列命令把主题源码克隆至本机;
git clone https://github.com/binglog/V2b-Theme-Sleek.git ${PWD}
3、编辑config.js文件,把其中的hosturl地址修改成v2b面板的网址,其它项根据需求替换修改后保存即可;
4、当支付的回调域名使用主题域名时,需要把v2b面板的app/Services/PaymentService.php文件替换下;
##找到文件50行
'return_url' => config('v2board.app_url') . '/#/order/' . $order['trade_no'],
##替换成以下代码
'return_url' => $_SERVER['HTTP_ORIGIN'] . "/#/dashboard",
0