目录
重要提醒
本教程仅作交流学习使用,请勿用作非法用途。
介绍
之前荒岛大佬出了一起纯命令行安装wyx2685分支版v2board的教程,小白是水货,只能借助一下删库塔来水一篇教程了。
安装aapanel
Centos :
yum install -y wget && wget -O install.sh https://www.aapanel.com/script/install_6.0_en.sh && bash install.sh forum
The experimental Centos/Ubuntu/Debian/Fedora installation command supports ipv6. Note that this command is executed with root privileges (Centos8 is supported)
curl -sSO https://www.aapanel.com/script/new_install_en.sh && bash new_install_en.sh forum
Ubuntu/Deepin :
wget -O install.sh https://www.aapanel.com/script/install-ubuntu_6.0_en.sh && bash install.sh forum
Debian :
wget -O install.sh https://www.aapanel.com/script/install-ubuntu_6.0_en.sh && bash install.sh forum
aapanel设置
aapanle默认开启了面板的SSL,嫌麻烦的可以直接 bt 27 关闭。我们进入aapanel,安装相应组件。需要安装的组件有:
Nginx 1.2.0 MySQL 5.7 PHP 8.1(如果无需启用webman,可安装7.4) phpmyadmin-5.x Supervisor
安装Redis、fileinfo
aaPanel 面板 > App Store > 找到PHP 8.1点击Setting > Install extentions > redis,fileinfo 进行安装。
解除被禁止的函数
aaPanel 面板 > App Store > 找到PHP 8.1点击Setting > Disabled functions 将 putenv
proc_open
pcntl_alarm
pcntl_signal
从列表中删除。
添加站点
aaPanel 面板 > Website > Add site。
在 Domain 填入你指向服务器的域名
在 Database 选择MySQL
在 PHP Verison 选择PHP-81
记得关闭防跨站:
安装v2board
安装主程序
通过SSH登录到服务器后访问站点路径如:/www/wwwroot/你的站点域名。
以下命令都需要在站点目录进行执行。
# 删除目录下所有文件
chattr -i .user.ini
rm -rf .htaccess 404.html index.html .user.ini
rm * -rf
执行命令从 Github 克隆到当前目录。
git clone https://github.com/wyx2685/v2board.git ./
执行命令安装依赖包以及V2board
sh init.sh
根据提示完成安装。
配置站点目录及伪静态
添加完成后编辑添加的站点 > Site directory > Running directory 选择 /public 保存。
记得关闭防跨站Anti-XSS attack
添加完成后编辑添加的站点 > URL rewrite 填入伪静态信息。
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;
}
顺便申请下SSL证书:
配置定时任务
aaPanel 面板 > Cron。
在 Type of Task 选择 Shell Script
在 Name of Task 填写 v2board
在 Period 选择 N Minutes 1 Minute
在 Script content 填写 php /www/wwwroot/路径/artisan schedule:run
根据上述信息添加每1分钟执行一次的定时任务。
启动队列服务
V2board的系统强依赖队列服务,正常使用V2Board必须启动队列服务。下面以aaPanel中supervisor服务来守护队列服务作为演示。
aaPanel 面板 > App Store > Tools
找到Supervisor进行安装,安装完成后点击设置 > Add Daemon
按照如下填写
在 Name 填写 V2board
在 Run User 选择 www
在 Run Dir 选择 站点目录 在 Start Command 填写 php artisan horizon 在 Processes 填写 1
填写后点击Confirm添加即可运行。
常见问题
Q:500错误
A:检查站点根目录权限,递归755,保证目录有可写文件的权限,也有可能是Redis扩展没有安装或者Redis没有按照造成的。你可以通过查看storage/logs下的日志来排查错误或者开启debug模式、站点设置中关闭防跨站。
面板相关设置
我们进入面板后台,自用用户建议进行下一些初始设置,关闭注册,强制HTTPS啥的……
设置下通讯密钥,待会搭建节点要用:
节点设置
权限组及订阅设置
我们添加一个测试权限组:
添加一个测试订阅:
添加reality节点
reality节点编辑安全性配置:
其中SNI需填入同时支持TLS1.3和H2的网站域名,具体可参考:
如何寻找 TLS1.3/H2 的网站
目标网站最低标准:国外网站,支持 TLSv1.3 与 H2,域名非跳转用
加分项:IP 相近(更像,且延迟低),Server Hello 后的握手消息一起加密(如 dl.google.com),有 OCSP Stapling
配置加分项:禁回国流量,TCP/80、UDP/443 也转发(REALITY 对外表现即为端口转发,目标 IP 冷门或许更好)
可以使用这个网站:点击访问 ,来寻找
TLS1.3 / X25519 / H2
的指向站点,更多注意事项,请看 本期视频也可以使用这个网站:点击访问 ,来查询目标网站是否支持
OCSP Stapling
(加分项而已,不支持也没有太大关系)注意:大家代理出现问题,第一个需要检查的是目标网站是否存在问题!!!!!!
添加hysteria2节点
我们简单起见,直接使用bing.com的自签证书,v2board会帮我们申请好自签证书:
后端对接
小佬自己修改了xrayr和v2bx,完美适配自己的分支版本,具体项目地址如下:
本分支支持的后端
对接hysteria2节点后端
小佬修改版的v2bx自带了一键生成配置非常简单,简单起见,我们直接使用v2bx对接,我们直接运行:
wget -N https://raw.githubusercontent.com/wyx2685/V2bX-script/master/install.sh && bash install.sh
提示启动失败,我们输入v2bx log查看下日志:
提示没有用户,我们去购买下自己的0元的测试套餐:
我们再重启下v2bx,已经成功了:
对接reality节点后端
v2bx的自动生成配置好像对接reality节点有点问题,我们采用小佬修改版的XrayR来对接,输入安装脚本:
wget -N https://raw.githubusercontent.com/wyx2685/XrayR-release/master/install.sh && bash install.sh
XrayR已经安装完成,我们需要手动修改下配置文件 /etc/XrayR/config.yml
其中有几行需要我们修改:
ApiHost: "http://127.0.0.1:667" #填写自己面板的ApiHost ApiKey: "123" #填写自己面板的ApiKey NodeID: 41 #填写自己节点的NodeID EnableVless: true # Enable Vless for V2ray Type #在这行下面需要添加一行 VlessFlow: "xtls-rprx-vision" EnableREALITY: false # 改为true DisableLocalREALITYConfig: false # 改为true XrayR restart #最后重启XrayR
我们可以看到两个节点已经在线了:
现在我们导入订阅看看,节点都能使用的:
好了,至此,面板搭建以及后端节点对接已经全部完成。
启用webman支持
具体可以查看下xboard作者提供的启用webman后的性能提升:
小佬的v2board分支版自然也是支持webman的,我们也来看下。
修改伪静态
我们需要将原来的伪静态修改为:
location /downloads { } location / { try_files $uri $uri/ @backend; } location ~ (/config/|/manage/|/webhook|/payment|/order|/theme/) { try_files $uri $uri/ /index.php$is_args$query_string; } location @backend { proxy_pass http://127.0.0.1:6600; } location ~ .*\.(js|css)?$ { expires 1h; error_log off; access_log /dev/null; }
守护任务及启用webman
在supervisor再添加一个守护进程:
如果开启webman后订阅地址显示为127.0.0.1看下方处理方法
请在nginx内设置加入以下内容
proxy_set_header Host $http_host;
如果无效,也可尝试在在伪静态的这个地方插入如下代码:
另外刚刚看到,小佬已经合并最新的pull request解决这个问题了……
原版迁移教程
按以下步骤进行面板文件迁移:
git remote set-url origin https://github.com/wyx2685/v2board
git checkout master
./update.sh
php artisan config:clear
php artisan config:cache
php artisan horizon:terminate
最后进入后台重新保存主题: 主题配置-激活主题-主题设置-确定。
小结
好了,入狱教程完毕,最主要的部分我们已经讲完了,足够入狱了,至于其他一些设置,邮件,支付,机器人啥的,各位自行去摸索吧。
最后的最后
再次提醒大家,本教程仅作交流学习使用,请勿用作非法用途,可别真入狱了。
References
https://v2board.com/deploy/aapanel.html
https://github.com/vlesstop/xiaoV2b
https://github.com/wyx2685/V2bX
https://github.com/wyx2685/XrayR
https://github.com/cedar2025/Xboard