v2-ui,一个全新的多协议多用户 v2ray 面板

作者: maofun 分类: 程序 发布时间: 2020-03-18 20:50

一、前言

sprov-ui 从 2 月份发布,到现在也差不多半年了,中间停更了一段时间。之后就不回归 sprov-ui 了,而是重新做一个新的出来,主要原因是 sprov-ui 使用的是 Java 语言,内存占用较高,对低内存的机器不太友好。于是这次用 Python 来写,内存占用会有明显改善,Python 还是比 Java 更适合写这类小工具。

二、功能介绍

使用中出现了问题、BUG 报告及功能建议请前往 Github – issues,请务必先查看别人是否已经提过同样的问题,确认没有再提 issue。

  • 系统状态监控
  • 支持多用户多协议,浏览器可视化操作,无需敲命令
  • 支持的协议:vmess、shadowsocks、dokodemo-door、socks、http
  • vmess 支持的传输配置:tcp(http伪装、tls)、kcp(伪装)、ws(tls)、http(tls)、quic(tls)
  • 支持账号流量统计
  • 支持自定义 v2ray 配置模板
  • 支持 https 访问面板(需自备域名 + ssl 证书)
  • 更多高级配置项,详见面板

三、安装&升级

用户注意事项(必看)

v2-ui 与其它所有关于修改 v2ray 配置文件的工具完全不兼容(包括 sprov-ui),安装 v2-ui 后会导致 v2ray 配置文件被重写,导致原有 v2ray 账号丢失,如有必要,请自行提前做好备份,以免造成不必要的后果。

建议系统

面板建议以下系统安装,建议尽量使用新版的系统:

  • CentOS 7+
  • Ubuntu 16+
  • Debian 8+

一键安装&升级

此脚本会使用 v2ray 官方脚本自动安装最新版 v2ray,无需再自己安装 v2ray,若之前安装过非官方的 v2ray,建议先卸载,否则可能会造成冲突。

若出现 bash curl: command not found 等错误,请先安装 curl

CentOS 系统:yum install curl -y

Debian 或 Ubuntu 系统:apt install curl -y

1
bash <(curl -Ls https://blog.sprov.xyz/v2-ui.sh)

更新与升级都是这条命令,升级不会造成数据丢失,你所做的个性化面板设置也会保留。

全新安装后,在浏览器中打开 http://<服务器IP>:65432 即可访问面板,默认用户名和密码都是 admin。

升级后,仍然使用你升级前的方式进入面板。

四、面板其它操作

01
02
03
04
05
06
07
08
09
10
11
v2-ui                  # 显示管理菜单 (功能更多)
v2-ui start            # 启动 v2-ui 面板
v2-ui stop             # 停止 v2-ui 面板
v2-ui restart          # 重启 v2-ui 面板
v2-ui status           # 查看 v2-ui 状态
v2-ui enable           # 设置 v2-ui 开机自启
v2-ui disable          # 取消 v2-ui 开机自启
v2-ui log              # 查看 v2-ui 日志
v2-ui update           # 更新 v2-ui 面板
v2-ui install          # 安装 v2-ui 面板
v2-ui uninstall        # 卸载 v2-ui 面板

重置流量

如图所示,点击【总用量】的标签即可重置对应的流量

v2-ui,一个全新的多协议多用户 v2ray 面板
重置流量

启用禁用账号

v2-ui,一个全新的多协议多用户 v2ray 面板
启用禁用账号

配置 https 访问

配置 https 需要域名和对应的证书,如果你连域名都没有的话,需要先买一个,并将一个子域名解析到服务器 IP。

证书申请教程:在 FreeSSL 上为你的域名申请免费 SSL 证书

方式①

域名和证书都搞定后,将证书文件上传至服务器任意位置,并进入面板配置如下两项并重启,配置错误会导致无法启动面板,需参考下面的教程重置面板设置。

v2-ui,一个全新的多协议多用户 v2ray 面板
配置 ssl 证书

方式②

当然你也可以使用 nginx、caddy 等 web 服务器反向代理面板,并在面板中设置【面板网页根路径】来达到路径分流的效果,我只在此提供思路,具体实施请自行研究。

以下为 nginx 参考配置,面板根路径为 /v2-ui,设置完之后访问路径就变成了 /v2-ui。假设之前的访问网址是:http(s)://xxx.com:65432,那么按照以下设置之后访问网址是:http(s)://xxx.com/v2-ui。总之最后要加个 /v2-ui

1
2
3
4
5
6
location /v2-ui {
    proxy_pass http://127.0.0.1:65432/v2-ui;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
v2-ui,一个全新的多协议多用户 v2ray 面板
面板配置根路径

面板数据备份与迁移

面板所有数据包括账号信息等都存在 /etc/v2-ui/v2-ui.db 中,只要备份此文件即可。在新服务器安装了面板之后,先关闭面板,再将备份的文件覆盖新安装的,最后启动面板即可。

注意,若配置了面板 ssl 证书,确保新服务器的同样的路径下有相同的证书文件,否则将无法在新服务器启动面板。同样的,若配置了 v2ray 的 tls,并且使用了证书文件配置,也要确保新服务器有证书文件,否则将无法启动 v2ray,若使用证书内容配置,则无需关心。

卸载面板

执行以下命令即可完全卸载面板,如果还需要卸载 v2ray,请自行找相关教程。

1
2
3
4
5
6
systemctl stop v2-ui
systemctl disable v2-ui
rm /usr/local/v2-ui/ -rf
rm /etc/v2-ui/ -rf
rm /etc/systemd/system/v2-ui.service -f
systemctl daemon-reload

五、常见问题(点击问题显示解答)

安装完打不开面板

检查面板状态,确认正在运行后再确保 65432 端口已经放行,我再说三遍:端口放行、端口放行、端口放行

装了宝塔后打不开面板也无法使用 v2ray

面板与宝塔本身并没有冲突,只不过是因为宝塔启用了防火墙,只开启了常用的端口,所以需要进入宝塔管理界面放行面板监听端口(65432)和你所使用的其它 v2ray 账号端口。

没有 mtproto 协议?

就目前来说,mtproto 已经不再建议使用,所以我就没有加了,除非 v2ray 之后优化了 mtproto,做了一个新的 mtproto 来,我才会加上此协议。如果确实需要的话,请自行在面板设置中修改配置模板。

如何自定义 v2ray 配置文件

进入【面板设置】,有一项 【v2ray 配置模板】,你可以在此修改配置模板,例如修改路由,自己添加一个 mtproto 等等,都可以。如果你对 v2ray 配置文件不够熟悉的话,那么还是建议多去 v2ray 官方文档学习学习。

忘记用户名和密码

使用以下命令重置用户名和密码,默认都为 admin

1
/usr/local/v2-ui/v2-ui resetuser

面板设置修改错误导致面板无法启动

使用以下命令重置所有面板设置,默认面板端口修改为 65432,其它的也会重置为默认值,注意,这个命令不会重置用户名和密码。

1
/usr/local/v2-ui/v2-ui resetconfig

面板启动失败

出现:‘ascii’ codec can’t encode characters in position 0-6: ordinal not in range(128)

这是因为系统编码不支持中文的缘故,将系统编码设置为 UTF-8 即可,具体请自行搜索方法。

怎么没有重启 v2ray 的按钮了

本面板与 sprov-ui 手动重启 v2ray 的方式不同,采用自动的方式,当添加、修改、删除账号后,默认会在 60 秒内自动更新 v2ray 配置文件,并重启 v2ray。可在面板设置中修改【账号生效时间】,不宜设置过小的数值,否则会造成 CPU 使用率上升。

因时间误差导致 vmess 无法连接

引用 v2ray 官方的一句话:VMess 依赖于系统时间,请确保使用 V2Ray 的系统 UTC 时间误差在 90 秒之内,时区无关。在 Linux 系统中可以安装ntp服务来自动同步系统时间。

进去面板之后语言是英文的

确保你的浏览器设置浏览网页时优先使用中文,有些时候浏览器语言是中文的,但是浏览网页时优先显示英文,其次才是中文,这样就会造成面板语言是英文的,具体请根据浏览器设置,将中文排在第一位。

电脑版 Chrome 设置方法:设置 – 高级 – 语言 – 展开语言设置 – 根据您的偏好设置对语言进行排序 – 将中文排在第一位。

一条评论
  • tight

    2024年8月23日 下午2:04

    大佬,你好,我的安装完xui,xui启动失败,可能因为启动时间超过2秒,xray也没激活,这种情况怎么办?

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注