xray panel supporting multi-protocol multi-user
System Status Monitoring-
- Support multi-user multi-protocol, web page visualization operation
- Supported protocols: vmess, vless, trojan, shadowsocks, dokodemo-door, socks, http
- Support for configuring more transport configurations
- Traffic statistics, limit traffic, limit expiration time
- Customizable xray configuration templates
- Support https access panel (self-provided domain name + ssl certificate)
- Support one-click SSL certificate application and automatic renewal
- For more advanced configuration items, please refer to the panel
bash <(curl -Ls https://raw.githubusercontent.com/blackestwhite/x-ui/master/install.sh)
- First download the latest compressed package from https://github.com/blackestwhite/x-ui/releases
- Then upload the compressed package to the server's
/root/
, then login to the server asroot
user
If your server cpu architecture is not
amd64
,replaceamd64
with another arch
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
This docker tutorial and docker image are provided by Chasing66提供
- install docker
curl -fsSL https://get.docker.com | sh
- install 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 image
docker build -t x-ui .
This feature and tutorial are provided by FranzKafkaYu提供
The script has a built-in SSL certificate application function. To use this script to apply for a certificate, the following conditions must be met:
- Know the Cloudflare registered email
- Know the Cloudflare Global API Key
- The domain name has been resolved to the current server through cloudflare
How to get the Cloudflare Global API Key:
When using, just enter 域名
, 邮箱
, API KEY
and the schematic diagram is as follows:
Precautions:
- The script uses DNS API for certificate request
- By default, Let'sEncrypt is used as the CA party
- The certificate installation directory is the /root/cert directory
- The certificates applied for by this script are all generic domain name certificates
- CentOS 7+
- Ubuntu 16+
- Debian 8+
All kinds of small white problems see high blood pressure
pass username in x-api-username
and password in x-api-password
headers.
available routes:
- POST /xui/api/inbound/add
- POST /xui/api/inbound/list
- POST /xui/api/inbound/del/:id
- POST /xui/api/inbound/update/:id
post body:
{
"up": 0,
"down": 0,
"total": 0,
"remark": "customer name",
"enable": true,
"expiryTime": 0,
"listen": null,
"port": 6942,
"protocol": "vmess",
"settings": "{\"clients\": [{\"id\": \"uuid-v4-id-preferably\",\"alterId\": 0}],\"disableInsecureEncryption\": false}",
"streamSettings": "{\"network\": \"ws\",\"security\": \"none\",\"wsSettings\": {\"path\": \"/\",\"headers\": {}}}",
"sniffing": "{\"enabled\": true,\"destOverride\": [\"http\",\"tls\"]}"
}