宝塔共存v2ray-web-manager

之前看着v2ray-web-manager官方文档搭建,但是后来想挂个网站,发现没法安装宝塔,于是倒腾了半天,记录下。

安装宝塔

#Centos7 64安装宝塔 
url=https://download.bt.cn/install/install_panel.sh;if [ -f /usr/bin/curl ];then curl -sSO $url;else wget -O install_panel.sh $url;fi;bash install_panel.sh ed8484bec

安装java 1.8.0

# 获得root权限
sudo su
# 更新软件源
apt-get update
# 安装必要软件
apt install vim openjdk-8-jre wget unzip  -y

安装v2ray

bash <(curl -L -s https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh) --version 5.3.0

建立后台网站

先建立一个网站,申请一个SSL证书,把上面文件都下载然后上传后台文件。

下载配置文件

# 下载管理服务的配置文件
wget -c --no-check-certificate https://raw.githubusercontent.com/master-coder-ll/v2ray-web-manager/master/conf/admin.yaml

# 下载代理服务的配置文件
wget -c --no-check-certificate https://raw.githubusercontent.com/master-coder-ll/v2ray-web-manager/master/conf/proxy.yaml

# 下载v2ray的专用配置文件
wget -c --no-check-certificate https://raw.githubusercontent.com/master-coder-ll/v2ray-web-manager/master/conf/config.json

修改配置文件

admin:
  #第一次启动时候的账号和密码
  email: 账号
  password: 密码

proxy:
  #与porxy交互的密码,也是各种token的私钥
  authPassword: 'token'
  subscriptionTemplate: /subscribe/%s?type=%s&timestamp=%s&token=%s

email:
  #smtp地址
  host: 
  #用户名称
  userName: 
  #密码
  password: 
  #端口
  port: 
  #默认false ,邮件不支持startTls不要开启
  startTlsEnabled: false

  exceedConnections: 你当前的连接数已经超过账号最大限制,当前风险系统自动降低你一半的连接数,并且持续一个小时;如果你在一个小时后,不在触发监控指标,你的账号连接数将恢复。
  vCodeTemplate: '你的验证码为: %s,请在10分钟内使用'
  overdueDate: 你的账号即将于:%s 过期,请留意续费。



logging:
  file: /www/wwwroot/xxx.com/logs/admin.log
  file.max-history: 7
  level:
    root: info

server:
  port: 9091
  tomcat:
    max-threads: 5
    min-threads: 2
spring:
  datasource:
    driver-class-name: org.sqlite.JDBC
    hikari:
      maximum-pool-size: 5
      minimum-idle: 2
    password: ''
    type: com.zaxxer.hikari.HikariDataSource
    url: jdbc:sqlite:/www/wwwroot/xxx.com/db/admin.db
    username: ''
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss
    time-zone: GMT+8
  jpa:
    hibernate:
      ddl-auto: update
    properties:
      hibernate:
        dialect: com.jhl.admin.util.SQLiteDialect
        enable_lazy_load_no_trans: true
        format_sql: ''
        show_sql: true

修改 账号密码 token 交互密码,还有log 和数据库路径。


proxy:
  authPassword: 'token'
  localPort: 8081
  maxConnections: 300

logging:
  file: /www/wwwroot/xxx.com/logs/v2ray-proxy.log
  file.max-history: 7
  level:
    root: info
manager:
  #如果admin端不在本机需要修改
  address: http://127.0.0.1:9091
  getProxyAccountUrl: ${manager.address}/proxy/proxyAccount/ac?accountNo={accountNo}&domain={domain}
  reportFlowUrl: ${manager.address}/report/flowStat
  reportOverConnectionLimitUrl: ${manager.address}/report/connectionLimit?accountNo={accountNo}

server:
  port: 8091
  tomcat:
    max-threads: 1
    min-threads: 1
{
  "api": {
    "services": [
      "HandlerService",
      "LoggerService",
      "StatsService"
    ],
    "tag": "api"
  },
  "inboundDetour": [
    {
      "listen": "127.0.0.1",
      "port": 62789,
      "protocol": "dokodemo-door",
      "settings": {
        "address": "127.0.0.1"
      },
      "tag": "api"
    }
  ],
  "log": {
    "loglevel": "info"
  },
  "inbounds": [
    {
      "listen": "127.0.0.1",
      "port": 6001,
      "protocol": "vmess",
      "settings": {
        "clients": [],
        "disableInsecureEncryption": false
      },
      "sniffing": {
        "destOverride": [
          "http",
          "tls"
        ],
        "enabled": true
      },
      "streamSettings": {
        "network": "ws",
        "security": "none",
        "wsSettings": {
          "headers": {},
          "path": "/ws/"
        }
      },
      "tag": "6001"
    }
  ],
  "outbounds": [
    {
      "protocol": "freedom",
      "settings": {}
    },
    {
      "protocol": "blackhole",
      "settings": {},
      "tag": "blocked"
    }
  ],
  "policy": {
    "system": {
      "statsInboundDownlink": true,
      "statsInboundUplink": true
    }
  },
  "routing": {
    "rules": [
      {
        "inboundTag": [
          "api"
        ],
        "outboundTag": "api",
        "type": "field"
      },
      {
        "ip": [
          "geoip:private"
        ],
        "outboundTag": "blocked",
        "type": "field"
      },
      {
        "outboundTag": "blocked",
        "protocol": [
          "bittorrent"
        ],
        "type": "field"
      }
    ]
  },
  "stats": {}
}

复制config.json到v2ray并重启

# 备份v2ray默认配置
mv /usr/local/etc/v2ray/config.json /usr/local/etc/v2ray/config.json.bak

# 复制配置到v2ray目录
cp /www/wwwroot/xxx.com/config.json /usr/local/etc/v2ray/

# 重启v2ray
service v2ray stop
service v2ray start

运行java服务

# 创建默认数据库目录
mkdir /opt/jar/db -p

# 运行 admin
nohup java -jar -Xms40m -Xmx40m -XX:MaxDirectMemorySize=10M -XX:MaxMetaspaceSize=80m  /www/wwwroot/xxx.com/admin.jar --spring.config.location=/www/wwwroot/xxx.com/admin.yaml > /dev/null 2>&1 &

# 运行 v2ray-proxy
nohup java -jar -Xms40m -Xmx40m -XX:MaxDirectMemorySize=10M -XX:MaxMetaspaceSize=80m /www/wwwroot/xxx.com/v2ray-proxy.jar --spring.config.location=/www/wwwroot/xxx.com/proxy.yaml > /dev/null 2>&1 &

配置nginx

server {
    listen 443 ssl ;
    http2 on;
    server_name xxx.com;
    root /www/wwwroot/xxx.com;
    include /www/server/panel/vhost/nginx/extension/xxx.com/*.conf;
    #ssl_certificate       /etc/nginx/ssl_cert/XXXX.com/XXXX.com.cer;
    #ssl_certificate_key   /etc/nginx/ssl_cert/XXXX.com/XXXX.com.key;
	ssl_certificate    /www/server/panel/vhost/cert/xxx.com/fullchain.pem;
    ssl_certificate_key    /www/server/panel/vhost/cert/xxx.com/privkey.pem;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers TLS13-AES-128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;

  
    location /api {
        proxy_pass http://127.0.0.1:9091/;
    }

    location /ws/ {
        proxy_redirect off;
        proxy_pass http://127.0.0.1:8081;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    } 
}
       
server {
    listen 80;
    server_name xxx.com;
    return 301 https:///$http_host$request_uri;
}

后台配置

图片[1]-宝塔共存v2ray-web-manager-木马屋

创建服务器

图片[2]-宝塔共存v2ray-web-manager-木马屋

设置api域名前缀

图片[3]-宝塔共存v2ray-web-manager-木马屋
© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容