v2-ui已經停止維護,目前建議新手使用x-ui部署伺服器。X-ui項目鏈接:https://github.com/vaxilu/x-ui
X-ui:支持多協議多用戶的 xray 面板
功能介紹
- 系統狀態監控
- 支持多用戶多協議,網頁可視化操作
- 支持的協議:vmess、vless、trojan、shadowsocks、dokodemo-door、socks、http
- 支持配置更多傳輸配置
- 流量統計,限制流量,限制到期時間
- 可自定義 xray 配置模板
- 支持 https 訪問面板(自備域名 + ssl 證書)
- 更多高級配置項,詳見面板
安裝&升級
bash <(curl -Ls https://raw.githubusercontent.com/vaxilu/x-ui/master/install.sh)
手動安裝&升級
- 首先從 https://github.com/vaxilu/x-ui/releases 下載最新的壓縮包,一般選擇
amd64
架構 - 然後將這個壓縮包上傳到伺服器的
/root/
目錄下,並使用root
用戶登錄伺服器
如果你的伺服器 cpu 架構不是
amd64
,自行將命令中的amd64
替換為其他架構
cd /root/
rm x-ui/ /usr/local/x-ui/ /usr/bin/x-ui -rf
tar zxvf x-ui-linux-amd64.tar.gz
chmod +x x-ui/x-ui x-ui/bin/xray-linux-* x-ui/x-ui.sh
cp x-ui/x-ui.sh /usr/bin/x-ui
cp -f x-ui/x-ui.service /etc/systemd/system/
mv x-ui/ /usr/local/
systemctl daemon-reload
systemctl enable x-ui
systemctl restart x-ui
使用docker安裝
此 docker 教程與 docker 鏡像由Chasing66提供
- 安裝docker
curl -fsSL https://get.docker.com | sh
- 安裝x-ui
mkdir x-ui && cd x-ui
docker run -itd --network=host \
-v $PWD/db/:/etc/x-ui/ \
-v $PWD/cert/:/root/cert/ \
--name x-ui --restart=unless-stopped \
enwaiax/x-ui:latest
Build 自己的鏡像
docker build -t x-ui .
建議系統
- CentOS 7+
- Ubuntu 16+
- Debian 8+
1、安裝x-ui
SSH登錄至你的VPS
複製粘貼以下代碼
等待安裝
待命令行出現如下提示時,表明安裝成功
修改面板密碼
瀏覽器打開http://伺服器ip地址:54321,登錄面板(用戶名和密碼都是admin)
轉到面板設置→用戶設置,修改用戶名密碼
2、配置節點
非CDN模式
登錄面板
轉到入站列表,點擊藍色的+號
輸入備註,埠一般保持默認即可,傳輸協議建議選ws。流量,到期時間的可以設置,不過一般不設。然後點擊添加
剛剛創建的節點旁邊依次點擊操作→二維碼
使用手機掃描屏幕上的二維碼,或者是點擊複製按鈕導出剛剛創建的節點
CDN模式
打開CloudFlare的域名管理,新增一條解析記錄到自己的VPS,小雲朵保持打開狀態,點擊Save保存
轉到Origin Server,點擊Create Certificate
修改證書到期時間,點擊Create
複製公鑰和私鑰,備用
登錄面板
轉到入站列表,點擊藍色的+號
參考下圖來設置,然後點擊添加
在剛剛創建的節點旁邊依次點擊操作→二維碼
使用手機掃描屏幕上的二維碼,或者是點擊複製按鈕導出剛剛創建的節點
常見問題
為什麼我無法連接結點?
- 請檢查配置
- 轉到CF的域名管理頁面,轉到SSL選項卡,選擇Full選項即可
常見問題
從 v2-ui 遷移
首先在安裝了 v2-ui 的伺服器上安裝最新版 x-ui,然後使用以下命令進行遷移,將遷移本機 v2-ui 的所有 inbound 賬號數據
至 x-ui,面板設置和用戶名密碼不會遷移
遷移成功後請
關閉 v2-ui
並且重啟 x-ui
,否則 v2-ui 的 inbound 會與 x-ui 的 inbound 會產生埠衝突
x-ui v2-ui
v2-ui
支持多協議多用戶的 v2ray 面板,Support multi-protocol multi-user v2ray panel
幫助翻譯
面板目前支持中文與英文,如果你發現了錯誤的翻譯想幫助修正,或者想幫助翻譯成更多的語言,可以在 translations 文件夾中找到各語言對應的翻譯,例如 translations/zh/LC_MESSAGES/message.po 文件是中文翻譯內容。其中 msgid 是英文原文,msgstr 是翻譯後的內容,每個 msgid 對應一個 msgstr。
當然,文檔目前也只支持中文和英文,如果你想幫助翻譯,那麼創建一個文件 README.lang.md,lang 是該語言的英文縮寫,例如 en 代表英文。
詳細教程
一、前言
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 設置方法:設置 – 高級 – 語言 – 展開語言設置 – 根據您的偏好設置對語言進行排序 – 將中文排在第一位。
運行截圖
功能介紹
- 系統狀態監控
- 支持多用戶多協議,瀏覽器可視化操作,無需敲命令
- 支持的協議: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+
一鍵安裝&升級
bash <(curl -Ls https://blog.sprov.xyz/v2-ui.sh)
面板其它操作
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 面板
數據備份與遷移
面板所有數據包括賬號信息等都存在 /etc/v2-ui/v2-ui.db 中,只要備份此文件即可。在新伺服器安裝了面板之後,先關閉面板,再將備份的文件覆蓋新安裝的,最後啟動面板即可。
卸載面板
執行以下命令即可完全卸載面板,如果還需要卸載 v2ray,請自行找相關教程。
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 埠已經放行,我再說三遍:埠放行、埠放行、埠放行。
沒有 mtproto 協議?
就目前來說,mtproto 已經不再建議使用,所以我就沒有加了,除非 v2ray 之後優化了 mtproto,做了一個新的 mtproto 來,我才會加上此協議。如果確實需要的話,請自行在面板設置中修改v2ray配置模板。
如何自定義 v2ray 配置文件
進入【面板設置】,有一項 【v2ray 配置模板】,你可以在此修改配置模板,例如修改路由,自己添加一個 mtproto 等等,都可以。如果你對 v2ray 配置文件不夠熟悉的話,那麼還是建議多去 v2ray 官方文檔學習學習。
忘記用戶名和密碼
使用以下命令重置用戶名和密碼,默認都為 admin
/usr/local/v2-ui/v2-ui resetuser
面板設置修改錯誤導致面板無法啟動
使用以下命令重置所有面板設置,默認面板埠修改為 65432,其它的也會重置為默認值,注意,這個命令不會重置用戶名和密碼。
/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 設置方法:設置 – 高級 – 語言 – 展開語言設置 – 根據您的偏好設置對語言進行排序 – 將中文排在第一位。
怎麼限制賬號網速和連接數
面板只是個方便你配置 v2ray 的工具,v2ray 沒有的功能就不要問了,給 v2ray 官方捐個 100 萬,讓他們實現這些功能,然後面板就可以配置了。
怎麼讓面板的賬號 IP 顯示為我的域名
- 將域名解析到你的 VPS 的 IP
- 使用域名訪問面板,如:http://blog.sprov.xyz:65432 ,具體域名和埠號以你的實際域名和埠號為準
- 如果面板設置里正確配置了域名證書和密鑰,那麼就使用:https://blog.sprov.xyz:65432 訪問面板
使用 CDN 的同志們注意了,CDN 通常只支持常見的 http 和 https 埠,所以使用 65432 是訪問不了的,建議將面板埠設置為 CDN 商家支持的埠,肯定受支持的埠號是 80(http)和 443(https)