脚本一键搭建X-UI面板

miao7 发布于 2026-08-12 173 次阅读


声明:本文章仅为互联网安全以及网络工程学习作用,请勿用于非法违规用途,务必遵守当地的法律法规。

X-UI 是一款基于 Go 语言开发、用于管理 Xray 代理服务的开源可视化 Web 面板。它把原本需要手写配置文件的工作变成了「点几下鼠标」,让节点配置、流量监控和日常运维都直观很多。

项目开源地址:github.com/vaxilu/x-ui

X-UI 面板界面

一、核心定位与技术栈

  • 定位:Xray 代理服务的可视化管理面板,替代命令行配置方式,支持多用户、多协议与流量管控
  • 技术栈:后端 Go、前端 Vue.js,轻量高效,资源占用低
  • 项目地址:github.com/vaxilu/x-ui

二、核心功能一览

多协议支持

覆盖主流代理协议:VMess、VLESS、Trojan、Shadowsocks、Socks、HTTP、dokodemo-door。

多用户与流量管理

  • 多用户独立配置、独立流量统计
  • 支持流量限额、到期时间限制、流量预警

可视化操作

  • Web 界面一键添加 / 编辑 / 删除节点
  • 实时查看系统负载、CPU / 内存 / 带宽占用与各用户流量

安全与证书

  • 支持 HTTPS 访问面板
  • 一键申请 / 自动续签 Let's Encrypt SSL 证书

高级配置

  • 支持自定义 Xray 配置模板
  • 可配置传输方式(TCP、mKCP、WebSocket、gRPC 等)与流量伪装

运维辅助

  • 一键安装 / 升级 / 重启 / 卸载
  • 日志查看、配置备份与恢复

三、七种协议怎么选

1. VMess

早期 V2Ray 的官方标准协议,非常成熟、兼容性最好。

  • 优点:加密稳定,客户端支持全面
  • 缺点:流量特征相对明显,现在比较容易被识别
  • 适合:老客户端、以兼容性优先的场景

2. VLESS

VMess 的轻量化升级版,更快、开销更低。

  • 特点:协议极简、效率高、性能好
  • 通常配合 XTLS 使用,速度可以接近直连
  • 适合:追求速度与低资源消耗

3. Trojan

设计思路是「假装自己是一个正常的 HTTPS 网站」。

  • 流量特征与正常网站几乎一致,伪装性极强
  • 必须搭配域名 + 证书使用
  • 适合:最看重安全性、需要防探测的场景

4. Shadowsocks(SS)

老牌经典代理协议,简单、稳定、速度快,全平台客户端都支持。

  • 缺点:没有强伪装,在严格的网络环境下容易受限
  • 适合:简单使用、速度优先、环境不严苛

5. Socks5 / HTTP

标准通用代理协议。

  • 不加密、不伪装,只做转发
  • 一般用于本地转发或内网代理,不适合直接对外暴露

6. WebSocket(WS)

走 WebSocket 协议,流量看起来像网页聊天。

  • 可以套 Nginx 或 CDN,伪装性强
  • 适合:需要过 CDN、过严格防火墙

7. dokodemo-door(任意门)

这是 Xray 里的入站协议,专门做端口转发。

  • 不加密、不认证、不混淆,只做纯流量转发
  • 名字来自日语「どこでもドア」,意为「通向任意地址的门」

四、搭建前的准备

1. 必备条件

一台云服务器(VPS):推荐 Ubuntu 20.04+ / Debian 10+ / CentOS 8+,其中 Ubuntu 22.04 兼容性最好。最低配置 1 核 1G 内存、1M 带宽即可满足个人自用。

必须拥有 root 权限,否则无法安装:

sudo -i   # 切换到 root 账户

服务器公网 IP:确认能正常访问外网,且没有被运营商封锁(若后续节点无法连接,可以尝试更换 IP 或端口)。

远程连接工具:Windows 可用 Xshell、FinalShell(国产友好,推荐);macOS 可用自带终端或 Termius。

可选:域名。推荐准备一个,用于配置 HTTPS、提升 Trojan / VLESS 的伪装性。

2. 系统更新与 BBR 加速

连上服务器后先更新系统依赖:

# Ubuntu / Debian(推荐)
sudo apt update && sudo apt upgrade -y && sudo apt install -y curl wget

# CentOS
sudo dnf update -y && sudo dnf install -y curl wget

可选但强烈建议:开启 BBR 拥塞控制算法,能明显改善网络吞吐。

echo "net.core.default_qdisc=fq" | sudo tee -a /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
sudo reboot

重启后执行下面这条命令,输出里包含 bbr 就说明开启成功:

sysctl net.ipv4.tcp_congestion_control

3. 端口规划

提前确认以下端口没有被占用:

  • 面板端口:默认 54321,建议自定义为 10000–65535 之间的数字(例如 12345),用于访问 X-UI 网页后台
  • 节点端口:自定义,例如 443 或 8080,推荐用 443(与 HTTPS 同端口,伪装性最好)
  • SSH 端口:22 或你自定义的 SSH 端口,务必保留,千万不要关闭,否则会直接断连

检查端口占用(把「端口号」替换成你要查的数字):

sudo netstat -tuln | grep 端口号
# 或(netstat 已过时,推荐用 ss)
sudo ss -tulnp | grep 端口号

五、一键安装 X-UI

推荐使用官方一键脚本,适配绝大多数 Linux 发行版,无需手动装依赖。

1. 执行安装命令

# 官方原版脚本(推荐,稳定无篡改)
bash <(curl -Ls https://raw.githubusercontent.com/vaxilu/x-ui/master/install.sh)

# 国内镜像(GitHub 访问失败时使用,速度更快)
bash <(curl -Ls https://cdn.jsdelivr.net/gh/vaxilu/x-ui@master/install.sh)

2. 安装过程说明

  • 脚本会自动检测系统环境,安装 Go 语言、Xray 核心、X-UI 面板等依赖,全程无需干预
  • 耗时约 3–5 分钟(取决于服务器带宽),中途不要中断
  • 安装完成后终端会输出关键信息,务必记下来:
==================================================
 x-ui 面板安装成功!
==================================================
面板访问地址: http://你的服务器IP:54321
默认用户名: admin
默认密码: admin
请妥善保管您的登录信息,首次登录请立即修改密码!
==================================================

3. 常用管理命令(建议收藏)

x-ui status     # 查看运行状态(排查无法访问)
x-ui start      # 启动面板
x-ui stop       # 停止面板
x-ui restart    # 重启面板(改配置后执行)
x-ui enable     # 设置开机自启
x-ui log        # 查看运行日志(节点连不上时排查)
x-ui update     # 升级面板
x-ui uninstall  # 卸载面板

六、面板初始化

安装成功后,用浏览器访问面板,先完成初始化配置,把默认值改掉。

1. 访问面板

浏览器打开:http://服务器公网IP:54321(如果你自定义了面板端口,把 54321 换成你的端口)。

2. 首次登录并修改密码

  • 输入默认账号 admin、默认密码 admin,点击登录
  • 登录后第一件事就是改密码:左侧「设置」→「面板设置」→ 修改用户名和密码

3. 面板基础设置

  • 修改面板端口(推荐):左侧「设置」→「面板设置」→「面板端口」→ 换成自定义端口(如 12345)→ 保存后重启 X-UI
  • 建议同时开启 HTTPS(需要域名),避免面板密码明文传输

七、添加代理节点(核心功能)

X-UI 的核心作用就是管理 Xray 节点。下面以「VLESS + XTLS」(最快)、「Trojan」(最安全)、「dokodemo-door」(中转)为例讲解添加步骤,其他协议(VMess、Shadowsocks 等)操作逻辑完全一致。

示例 1:添加 VLESS + XTLS 节点(推荐,速度最快)

  1. 登录 X-UI 面板,点击左侧「入站列表」→「添加入站」
  2. 填写基础信息(重点是下面几项,其余保持默认):
    • 备注:自定义,例如「个人 VLESS 节点」,方便区分
    • 协议:选择 VLESS
    • 端口:自定义,例如 443(推荐,伪装性强,需确认未被占用)
    • UUID:点击右侧「生成」自动生成,无需修改(相当于节点密码)
    • 传输设置:网络选 tcp,传输类型选 xtls-rprx-vision(XTLS 加速核心,速度接近直连)
    • TLS 设置:开启 TLS,域名填你自己的域名(没有可留空,不影响使用但伪装性下降),证书可选「自动申请」(需有域名)或「上传证书」
  3. 点击页面底部「保存」,返回入站列表,看到节点状态是「运行中」即成功

示例 2:添加 Trojan 节点(推荐,伪装最强)

  1. 左侧「入站列表」→「添加入站」,备注填「个人 Trojan 节点」
  2. 协议:选择 Trojan
  3. 端口:自定义,例如 443(与 HTTPS 端口一致,伪装性拉满)
  4. 密码:点击「生成」,妥善保存(客户端连接时要用)
  5. TLS 设置:必须开启 TLS(Trojan 的核心就是靠 TLS 伪装),填写域名并申请 / 上传 SSL 证书
  6. 保存后执行 x-ui restart,节点即可正常使用

示例 3:添加 dokodemo-door 节点(中转 / 端口转发)

  1. 左侧「入站列表」→「添加入站」,备注填「中转节点」
  2. 协议:选择 dokodemo-door
  3. 监听端口:自定义,例如 1234(服务器上开放的中转端口)
  4. 目标地址:填需要转发到的 IP,例如另一台服务器的公网 IP
  5. 目标端口:填需要转发到的端口,例如另一台服务器的代理端口
  6. 网络:选 tcp,udp(同时支持两种协议转发)
  7. 保存后无需重启即生效,本地连接「服务器IP:1234」就能实现流量中转

补充:导出节点配置

添加节点后,点击入站列表里节点右侧的「操作」→「导出」,可以选「链接」或「二维码」两种格式,用于客户端导入,不用手动填一堆复杂参数。

八、客户端连接(电脑 / 手机)

1. 电脑端(Windows / Mac)

  • 推荐客户端:V2RayN(Windows,免费)、V2RayU(Mac,免费)、Clash(全平台,功能强大)
  • 连接步骤:
    1. 安装客户端并打开,点击「导入配置」
    2. 选择「从剪贴板导入」(粘贴 X-UI 导出的节点链接),或「扫描二维码」
    3. 导入成功后选中该节点,点击「启动代理」
    4. 浏览器搜索「IP 查询」,显示的 IP 是服务器 IP 就说明成功了

2. 手机端(Android / iOS)

  • Android:推荐「V2RayNG」(应用商店可搜,免费),导入方式与电脑端一致,导入后启动代理即可
  • iOS:在 App Store 搜索「Shadowrocket」「Quantumult X」等(部分需付费),导入节点链接 / 二维码后开启代理

九、常见问题排查

1. 面板无法访问

  • 排查 1:执行 x-ui status,若显示「not running」就执行 x-ui start 启动
  • 排查 2:服务器防火墙 / 安全组没放行面板端口。以 Ubuntu 为例(把端口号换成你的):
    sudo ufw allow 54321/tcp
    sudo ufw reload
  • 排查 3:换浏览器或清缓存,避免缓存导致打不开

2. 节点无法连接

  • 排查 1:看入站列表里节点状态是不是「运行中」,不是就点「启动」
  • 排查 2:服务器防火墙 / 安全组没放行节点端口(如 443),执行上面的放行命令
  • 排查 3:执行 x-ui log 看日志,若提示「端口被占用」,改节点端口并保存重启
  • 排查 4:Trojan 节点必须开启 TLS 且域名 / 证书配置正确;没有域名就换成 VLESS 协议

3. 安装失败

  • 排查 1:确认有 root 权限,命令前加 sudo(例如 sudo bash ...)
  • 排查 2:换国内镜像脚本(上文提供的第二个),避免 GitHub 访问超时
  • 排查 3:检查系统版本,需为 Ubuntu 20.04+ / Debian 10+ / CentOS 8+,太老要先升级系统

十、安全提醒与注意事项

  1. 务必修改默认账号密码和面板端口,避免被扫描器发现后盗用;节点密码也建议定期更换
  2. dokodemo-door 协议无加密、无认证,绝对不要直接暴露在公网,建议配合防火墙只允许自己的 IP 访问
  3. 节点端口优先选 443、80 等常用端口,伪装性更强,被封锁的概率更低
  4. 定期升级:执行 x-ui update 修复安全漏洞、提升稳定性
  5. 合规使用:本教程仅用于学习研究,请遵守国家网络安全相关法律法规

十一、补充说明:3x-UI

如果你需要 3x-UI(X-UI 的增强版,支持多语言、订阅生成等功能),可以执行下面的一键安装命令,操作逻辑与本教程完全一致:

# 3x-UI 中文优化版(推荐)
bash <(curl -Ls https://raw.githubusercontent.com/gm-cx/3x-ui-cn/master/install.sh)

# 3x-UI 原版(英文)
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

3x-UI 默认面板端口是 2053,默认账号密码是 admin/admin123,其余配置步骤与 X-UI 相同。