| 条件 | 说明 | 必需 |
|---|---|---|
| Python 3 | 标准库即可,无第三方依赖 | ✅ 必需 |
| X-UI 面板 | 已安装并运行,提供 inbound/list API | ✅ 必需 |
| xray 访问日志 | 用于「连接明细」和「平台统计」 | 可选 |
| Linux 系统 | Ubuntu/Debian/CentOS 均可 | ✅ 必需 |
scp xui-monitor.tar.gz root@新服务器IP:/root/
cd /root
tar xzf xui-monitor.tar.gz
cd xui-monitor-package
bash install.sh
http://新服务器IP:9090
# 1. 复制文件
mkdir -p /opt/xui-monitor
cp app/* /opt/xui-monitor/
# 2. 编辑配置
vi /opt/xui-monitor/config.json
# 3. 创建 systemd 服务
cat > /etc/systemd/system/xui-monitor.service << 'SVC'
[Unit]
Description=X-UI Monitor Dashboard
After=network.target x-ui.service
[Service]
Type=simple
WorkingDirectory=/opt/xui-monitor
ExecStart=/usr/bin/python3 /opt/xui-monitor/monitor_server.py
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
SVC
# 4. 启动
systemctl daemon-reload
systemctl enable --now xui-monitor
配置文件 config.json 各项含义:
| 字段 | 说明 | 示例 |
|---|---|---|
xui_base | X-UI 面板地址(含 webBasePath) | http://127.0.0.1:2053/DTmf |
xui_user | X-UI 面板用户名 | admin |
xui_pass | X-UI 面板密码 | password |
listen_port | 监控面板端口 | 9090 |
panel_user | 监控面板登录用户名 | admin |
panel_pass | 监控面板登录密码 | password |
access_log | xray 访问日志路径 | /var/log/xray-access.log |
xray_bin | xray 二进制路径 | /usr/local/x-ui/bin/xray-linux-amd64 |
xui_base 必须包含 X-UI 面板的 webBasePath(如果有)。
例如您的 X-UI 面板设置了 base path /DTmf/,则填
http://127.0.0.1:2053/DTmf;如果没有设置,填 http://127.0.0.1:2053。
「连接明细」和「平台统计」依赖 xray 的访问日志。若 X-UI 未开启,部署包内含 enable-access-log.md 教程。
# 快速开启(修改 X-UI 数据库)
python3 << 'EOF'
import sqlite3, json
conn = sqlite3.connect('/etc/x-ui/x-ui.db')
cur = conn.cursor()
cur.execute("SELECT value FROM settings WHERE key='xrayTemplateConfig'")
config = json.loads(cur.fetchone()[0])
config['log'] = {
"loglevel": "warning",
"access": "/var/log/xray-access.log",
"error": "/var/log/xray-error.log"
}
cur.execute("UPDATE settings SET value=? WHERE key='xrayTemplateConfig'",
(json.dumps(config, ensure_ascii=False, indent=2),))
conn.commit()
EOF
touch /var/log/xray-access.log /var/log/xray-error.log
chmod 666 /var/log/xray-access.log /var/log/xray-error.log
x-ui restart
检查 config.json 里的 xui_base 是否正确(是否包含 webBasePath),以及 X-UI 面板账号密码是否正确。
xray 未开启访问日志,或 access_log 路径配置不对。参考上面的开启教程。
检查 xray_bin 路径和 xray_api 地址是否正确,xray 是否开启了 API(StatsService)。
检查 panel_user/panel_pass,确认浏览器允许 cookie。
systemctl status xui-monitor # 查看状态
systemctl restart xui-monitor # 重启面板
systemctl stop xui-monitor # 停止
journalctl -u xui-monitor -f # 实时日志