静看光阴荏苒
不管不顾不问不说也不念

V2Board分支版本安装

介绍

这个分支版本增加了很多功能:在线设备数量限制,支持vless的reality/h2等。

项目地址:https://github.com/wyx2685/v2board

配套后端:https://github.com/wyx2685/XrayR

安装V2Board

以下安装步骤基于Debian12,安装nginx/mariadb/redis/certbot:

apt -y install nginx python3-certbot-nginx mariadb-server redis-server

安装php7.4:

apt -y install curl apt-transport-https ca-certificates lsb-release
curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
apt -y install php7.4-common php7.4-cli \
php7.4-fpm php7.4-gd php7.4-mysql php7.4-mbstring \
php7.4-curl php7.4-xml php7.4-xmlrpc php7.4-zip \
php7.4-intl php7.4-bz2 php7.4-bcmath php7.4-redis

如果你的系统之前安装过别的php版本,可以使用下面的命令切换到7.4:

update-alternatives --config php

安装composer:

curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

配置mariadb数据库:

mysql_secure_installation

登录mariadb数据库:

mysql -u root -p

创建数据库和用户:

CREATE DATABASE v2board CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON v2board.* TO v2board@localhost IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
quit

获取v2board修改版的源码:

cd /var/www
git clone https://github.com/wyx2685/v2board.git
cd v2board/

安装依赖:

composer install

安装v2board:

php artisan v2board:install

修改权限和所有者:

chmod -R 755 v2board/
chown -R www-data:www-data v2board/

添加计划任务:

crontab -u www-data -e

写入如下配置:

* * * * * php /var/www/v2board/artisan schedule:run >> /dev/null 2>&1

新建队列服务:

nano /etc/systemd/system/horizon.service

写入如下配置:

[Unit]
Description=Laravel Horizon Queue Manager
After=network.target

[Service]
user=www-data
ExecStart=/usr/bin/php /var/www/v2board/artisan horizon
Restart=always

[Install]
WantedBy=multi-user.target

启动并设置开机自启:

systemctl enable --now horizon.service

新建nginx站点配置文件:

nano /etc/nginx/sites-available/v2board

写入如下配置:

server {
    listen      80;
    server_name v2board.example.com;
    root        /var/www/v2board/public;
    index       index.php;
    client_max_body_size 0;

    location /downloads {
    }

    location / {
        try_files $uri $uri/ /index.php$is_args$query_string;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }
}

启用站点:

ln -s /etc/nginx/sites-available/v2board /etc/nginx/sites-enabled/v2board

签发ssl证书:

certbot --nginx

登录管理后台,配置站点域名:

配置通讯密钥(apikey)

安装后端

apt -y update
apt -y install unzip
mkdir -p /opt/xrayr-mod && cd /opt/xrayr-mod
curl -Lo XrayR-linux-arm64-v8a.zip https://github.com/wyx2685/XrayR/releases/download/v0.9.2-20231027/XrayR-linux-arm64-v8a.zip
unzip XrayR-linux-arm64-v8a.zip

新建systemd服务:

nano /etc/systemd/system/xrayr.service

写入如下配置:

[Unit]
Description=XrayR Backend Server
After=network.target

[Service]
AmbientCapabilities=CAP_NET_BIND_SERVICE
WorkingDirectory=/opt/xrayr-mod
ExecStart=/opt/xrayr-mod/XrayR -c config.yml
Restart=always

[Install]
WantedBy=multi-user.target

对接Reality节点

在面板新建vless节点,按下图配置:

编辑安全性设置,按下图配置:

记住节点ID:

编辑后端配置文件:

nano /opt/xrayr-mod/config.yml

一个示例配置(…表示省略掉的配置,保持config.yml文件内默认的配置即可,不需要做修改)

...
Nodes:
  - PanelType: "NewV2board" # Panel type: SSpanel, NewV2board, PMpanel, Proxypanel, V2RaySocks, GoV2Panel
    ApiConfig:
      ApiHost: "https://v2board.example.com" # v2board面板域名
      ApiKey: "imlala" # 在v2board面板设置的apikey
      NodeID: 1 # v2board节点id
      NodeType: V2ray # Node type: V2ray, Shadowsocks, Trojan, Shadowsocks-Plugin
      Timeout: 30 # Timeout for the api request
      EnableVless: true # Enable Vless for V2ray Type
      VlessFlow: "xtls-rprx-vision" # Only support vless
      SpeedLimit: 0 # Mbps, Local settings will replace remote settings, 0 means disable
      DeviceLimit: 0 # Local settings will replace remote settings, 0 means disable
      RuleListPath: # /etc/XrayR/rulelist Path to local rulelist file
    ControllerConfig:
      ...
      AutoSpeedLimitConfig:
        ...
      GlobalDeviceLimitConfig:
        ...
      EnableFallback: false # Only support for Trojan and Vless
      FallBackConfigs:  # Support multiple fallbacks
        ...
      DisableLocalREALITYConfig: true  # 直接从面板下发reality节点配置,启用了这个就可以忽略掉EnableREALITY、REALITYConfigs。
      EnableREALITY: false # Enable REALITY
      REALITYConfigs:
        ...
      CertConfig:
        CertMode: none # Option about how to get certificate: none, file, http, tls, dns. Choose "none" will forcedly disable the tls config.
        ...
...

说明:DisableLocalREALITYConfig使用这个选项后,直接从面板下发reality节点配置信息,所以配置文件里面就不需要配置reality相关的东西了。

启动后端并设置开机自启:

systemctl enable --now xrayr.service

对接VLESS+gRPC+CDN节点

在面板新建vless节点,按下图配置:

编辑安全性设置,按下图配置,注意这里只需要配置一个SNI即可,其他的都留空:

编辑协议配置:

写入如下配置:

{
  "serviceName": "test1026"
}

记住节点ID:

编辑后端配置文件:

nano /opt/xrayr-mod/config.yml

一个示例配置(…表示省略掉的配置,保持config.yml文件内默认的配置即可,不需要做修改)

...
Nodes:
  - PanelType: "NewV2board" # Panel type: SSpanel, NewV2board, PMpanel, Proxypanel, V2RaySocks, GoV2Panel
    ApiConfig:
      ApiHost: "https://v2board.example.com"
      ApiKey: "imlala"
      NodeID: 2
      NodeType: V2ray # Node type: V2ray, Shadowsocks, Trojan, Shadowsocks-Plugin
      Timeout: 30 # Timeout for the api request
      EnableVless: true # Enable Vless for V2ray Type
      VlessFlow: "xtls-rprx-vision" # Only support vless
      SpeedLimit: 0 # Mbps, Local settings will replace remote settings, 0 means disable
      DeviceLimit: 0 # Local settings will replace remote settings, 0 means disable
      RuleListPath: # /etc/XrayR/rulelist Path to local rulelist file
    ControllerConfig:
      ListenIP: 127.0.0.1 # IP address you want to listen
      ...
      AutoSpeedLimitConfig:
        ...
      GlobalDeviceLimitConfig:
        ...
      EnableFallback: false # Only support for Trojan and Vless
      FallBackConfigs:  # Support multiple fallbacks
        ...
      DisableLocalREALITYConfig: false  # disable local reality config
      EnableREALITY: false # Enable REALITY
      REALITYConfigs:
        ...
      CertConfig:
        CertMode: none # Option about how to get certificate: none, file, http, tls, dns. Choose "none" will forcedly disable the tls config.
        ...
...

安装nginx:

apt -y install nginx

新建nginx配置文件:

nano /etc/nginx/sites-available/grpc

写入如下配置:

server {
    listen 80;
    server_name grpc.example.com;

    if ($host = grpc.example.com) {
        return 301 https://$host$request_uri;
    }
    return 404;
}

server {
    listen 443 ssl http2 so_keepalive=on;
    server_name grpc.example.com;
    index index.nginx-debian.html;
    root /var/www/html;

    ssl_certificate /etc/nginx/cert/grpc.example.com.pem;
    ssl_certificate_key /etc/nginx/cert/grpc.example.com.key; 
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;

    location /test1026 {
        if ($content_type !~ "application/grpc") {
            return 404;
        }
        client_max_body_size 0;
        client_body_buffer_size 1m;
        client_body_timeout 1h;
        grpc_pass grpc://127.0.0.1:53000;
        grpc_set_header X-Real-IP $remote_addr;
    }
}

启用站点:

ln -s /etc/nginx/sites-available/grpc /etc/nginx/sites-enabled/grpc

转到cloudflare,添加域名a记录并启用cdn:

转到Network,启用gRPC回源:

转到SSL/TLS-Overview,将encryption mode改为Full (strict):

转到SS/TLS-Origin Server,申请一个免费15年的证书:

类型选ECC,hostnames填你的域名或者直接通配符也行:

将证书(PEM)和密钥(KEY)分别复制保存到如下文件:

mkdir -p /etc/nginx/cert
nano /etc/nginx/cert/grpc.example.com.pem
nano /etc/nginx/cert/grpc.example.com.key

重载nginx使其生效:

systemctl reload nginx
赞(4)
未经允许不得转载:荒岛 » V2Board分支版本安装
分享到: 更多 (0)

评论 19

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    这个版面还能对接hy2 后端地址 https://github.com/cedar2025/hysteria

    混边6个月前 (10-31) Microsoft Edge 118.0.2088.76 Microsoft Edge 118.0.2088.76 Windows 10 x64 Edition Windows 10 x64 Edition回复
  2. #2

    :idea: :idea: :idea: :idea:

    忽悠瘸了6个月前 (10-31) Google Chrome 118.0.0.0 Google Chrome 118.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
  3. #3

    非常牛逼:mrgreen: :mrgreen: :mrgreen:

    不愿意透露姓名的原作者6个月前 (10-31) Google Chrome 118.0.0.0 Google Chrome 118.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
    • 大佬更牛逼!!!

      LALA6个月前 (10-31) Safari 17.1 Safari 17.1 iPhone iOS 17.1 iPhone iOS 17.1回复
  4. #4

    厉害了,能来个xrayr后端宝塔 +VLESS+gRPC+CDN节点教程吗?后直接nginx的出问题不方便查 :twisted:

    zero6个月前 (11-02) Google Chrome 114.0.0.0 Google Chrome 114.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
    • 兄弟配置不在上面吗 去宝塔 你网站管理 选你要设置的网站 修改配置文件 server{}里最后加这一段
      location /test1026 {
      if ($content_type !~ “application/grpc”) {
      return 404;
      }
      client_max_body_size 0;
      client_body_buffer_size 1m;
      client_body_timeout 1h;
      grpc_pass grpc://127.0.0.1:53000;
      grpc_set_header X-Real-IP $remote_addr;
      }

      混边6个月前 (11-10) Microsoft Edge 119.0.0.0 Microsoft Edge 119.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
  5. #5

    还是那么喜欢手动折腾 :oops:

    Foliage6个月前 (11-03) Chrome 118.0.5993.92 Chrome 118.0.5993.92 iPhone iOS 17.1 iPhone iOS 17.1回复
  6. #6

    大佬,hy2对接的能出一期教程吗?

    ttt6个月前 (11-10) Google Chrome 119.0.0.0 Google Chrome 119.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
  7. #7

    峨嵋zing :roll:

    句句子6个月前 (11-11) Firefox 121.0 Firefox 121.0 Windows NT x64 Edition Windows NT x64 Edition回复
  8. #8

    请教博主 如何在该面板上配置reality的uuid和client-fingerprint字段呢

    ziuch6个月前 (11-13) Google Chrome 118.0.0.0 Google Chrome 118.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
    • 自动生成的
      另uuid 对应的是账号 不同账号 是不同的uuid

      混边6个月前 (11-14) Microsoft Edge 119.0.0.0 Microsoft Edge 119.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
  9. #9

    前端登录不上去 提示:请求失败 遇到了些问题我们正在进行处理

    cookrs6个月前 (11-13) Google Chrome 119.0.0.0 Google Chrome 119.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
    • 我也遇到同样的问题,请问你怎么解决的? :grin:

      Rick4个月前 (01-03) Google Chrome 120.0.0.0 Google Chrome 120.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
  10. #10

    xboard的教程也写一篇呗 :cool:

    32131235个月前 (12-03) Google Chrome 119.0.0.0 Google Chrome 119.0.0.0 Samsung Samsung回复
  11. #11

    lala 你会用v2bx对接这个面板的hy2协议吗

    wkwk4个月前 (12-16) Microsoft Edge 120.0.0.0 Microsoft Edge 120.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
  12. #12

    大佬牛逼

    大佬牛逼4个月前 (12-22) Google Chrome 120.0.0.0 Google Chrome 120.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
  13. #13

    按照大佬给的 reality 配置去填写的,但是死活连接不上,不知道哪里出了问题,真难受

    venom2个月前 (02-18) Google Chrome 121.0.0.0 Google Chrome 121.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
    • 看后端日志。。。

      LALA2个月前 (02-19) Google Chrome 121.0.0.0 Google Chrome 121.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复

分享创造快乐

广告合作资源投稿