v2-ui,一个全新的多协议多用户 v2ray 面板
一、前言
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 面板 |
重置流量
如图所示,点击【总用量】的标签即可重置对应的流量
启用禁用账号
配置 https 访问
配置 https 需要域名和对应的证书,如果你连域名都没有的话,需要先买一个,并将一个子域名解析到服务器 IP。
证书申请教程:在 FreeSSL 上为你的域名申请免费 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; } |
面板数据备份与迁移
面板所有数据包括账号信息等都存在 /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也没激活,这种情况怎么办?