3x-ui面板安装与使用
服务器配置与部署

3x-ui面板安装与使用

JACIN··17 分钟阅读

目录#

[[toc]]

这里 主要使用 3x 安装 trojan 节点,其他 vless 还是可以使用 singbox

主要是用 3x 可以很好地监测使用流量情况信息

docker安装与使用#

这里的 - ../ssl:/root/cert 就是你的 证书路径地址

只要有.crt 以及 .key 即可

python
services:
  3xui:
    image: ghcr.io/mhsanaei/3x-ui:latest
    container_name: 3xui_app
    network_mode: host
    volumes:
      - ./db:/etc/x-ui
      - ../ssl:/root/cert
      - ./logs:/var/log/x-ui
    restart: unless-stopped

快捷启动命令

python
docker-compose pull

# 停止并删除现有容器
docker-compose down

# 启动容器并将其放到后台
docker-compose up -d

密码管理#

因为最新版的 已经删除了 打在日志里面的管理,故这里需要手动改数据库

选择 admin 以及 admin123 进行配置

【登录进去后必须要改密码!!!!!】

python
docker exec -it 3xui_app sh -lc '
  apk add --no-cache sqlite apache2-utils >/dev/null \
  && HASH=$(htpasswd -bnBC 10 "" "admin123" | tr -d ":\n" | sed "s/^\$2y/\$2a/") \
  && sqlite3 /etc/x-ui/x-ui.db "UPDATE users SET username=\"admin\", password=\"$HASH\" WHERE id=1;" \
  && echo "OK: username=admin password=admin123 (bcrypt written)"
'
docker restart 3xui_app

查询密码用户是否设置成功

python
docker exec -it 3xui_app sh -c "apk add --no-cache sqlite >/dev/null; sqlite3 /etc/x-ui/x-ui.db 'select id,username,password from users;'"

记得更改自己的端口即可。

配置 nginx 反代与 cf 防火墙#

python
server {
    listen 443 ssl http2;

    server_name your-domain.jacin.me;
 

    ssl_certificate     /root/fast-proxy/ssl/origin.crt;
    ssl_certificate_key /root/fast-proxy/ssl/origin.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers off;

    client_max_body_size 30M;

    location / {
        proxy_pass http://localhost:xxxxxx;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

这个就是配置面板的 nginx 转发

注意 这个域名最好直接由cloudflare 进行代理(就是开启小黄云操作)

配置防火墙原则

python
http.host eq "your-domain.jacin.me" and ip.src ne need-ip and ip.src ne need-ip
选择 block
只允许这两个进行访问

need-ip 就是只有这两个才可以进行访问,其他直接 block

即如图所示

配置 trojan 节点#

进行配置 入站

配置 TLS

sniffing 也关闭

此时 trojan 节点就可以开启了

下面是 clash 系列的配置

python
- name: "trojan香港"      # 节点备注
    type: trojan              # 协议
    server: your-domain.jacin.me       # 你的域名
    port: your-port               # 端口
    password: "xxxx"    # Trojan 密钥
    sni: your-domain.jacin.me        # TLS SNI,必须和证书域名一致
    skip-cert-verify: true   # 校验证

此时就可以了。

比较常见协议#

个人还是使用 vless+tls 比较多,因为可以隐藏SNI 信息,更加隐蔽

协议TLS 握手开销传输层开销CPU 负载
Trojan标准 TLS原生 TCP较低(无多路复用)
VLESS+TLS+WS标准 TLSWebSocket 封装中等(WS 额外帧)
VLESS+TLS+Reality标准 TLSReality 自定义略高(多轮握手)
  • Trojan 基于纯 TLS over TCP,只有一次 TLS 握手,长连接后续无额外封装,CPU 和流量开销最低。
  • VLESS+WS 在 TCP 上再套一层 WebSocket,客户端/服务端都要多一次拆封帧,增加约 2–5% 带宽与少量 CPU 开销。
  • VLESS+Reality 在 VLESS+TLS 基础上引入了 “QUIC-like 的多轮握手” 和多路复用,初始连接稍慢,CPU 负责更多分片与加密校验,开销略高。
特性TrojanVLESS+TLS+WSVLESS+TLS+Reality
多用户无状态支持支持支持
流量分路需要额外配置支持内建多路复用原生多路复用
复用(Mux)可选原生支持
**动态端口 / 动态端口不支持可通过订阅或脚本动态生成支持(更灵活的端口握手)
握手握层安全TLS 1.2/1.3TLS 1.2/1.3TLS 1.2/1.3 + Reality 扩展
协议模拟特征DPI 难度穿透 CDN / WAF
TrojanHTTPS(TLS)中等良好
VLESS+TLS+WSWebSocket HTTP良好优秀
VLESS+TLS+RealityQUIC-like非常高最优
协议客户端支持配置复杂度
TrojanTrojan 客户端、Clash、V2rayN 等
VLESS+TLS+WSV2ray 核心、Clash、Qv2ray、Xray 等
VLESS+TLS+RealityXray-core、最新 Clash 版本较高

开启X-ray 日志#

在面板界面

评论

还没有评论,来发第一个吧