Skip to content

3x-ui on a VPS

Xray panel with limits

Category
VPN / Proxy
Hosting
VPN server
Author
MHSanaei
License
GPL-3.0
Version
3.8.5

The script is free · VPS from $2.79 per month · installs in about 60 seconds

Install over SSH

root@vps:~# bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

  • SystemUbuntu 24.04 · x86_64ok
  • Sourcegithub.com/MHSanaei/3x-uiok
  • Version3.8.5ok
  • Port2053/tcplisten
  • Port443/tcplisten

✓ 3x-ui 3.8.5 installed · about 60 seconds

root@vps:~#

Install command from the library. Output is shortened and may differ on your server.

What it is

  • Xray
  • VLESS
  • REALITY
  • Hysteria2
  • Limits

3x-ui is a web panel for Xray-core, a continuation of the X-UI project. In it you create connections (inbounds) and clients, set a traffic limit, expiry and device count for each, and hand out links, QR codes and subscriptions.

The panel installs with a single script, without Docker, and uses almost no resources, which is why it is a popular choice for one or two servers. Besides VLESS with REALITY, it supports VMess, Trojan, Shadowsocks, WireGuard, AmneziaWG, Hysteria2 and MTProto.

During installation the script generates a random username, password, port and panel path, and the service is managed through the x-ui console menu.

  • VLESS, VMess, Trojan, Shadowsocks, WireGuard, AmneziaWG, Hysteria2, MTProto
  • TCP, WebSocket, gRPC and XHTTP transports with TLS and REALITY
  • Per-client limits on traffic, time, IPs and devices
  • Built-in subscription server: raw, JSON and Clash
  • Telegram bot, REST API and multi-node management
  • SQLite database by default, or PostgreSQL

Recommended plan

For 3x-ui: at least 1 vCPU, 2 GB RAM and 10 GB NVMe.

Minimum to run
1 vCPU · 1 GB RAM · 10 GB disk
Systems
Ubuntu 22.04 · Ubuntu 24.04 · Debian 11 · Debian 12 · AlmaLinux 9

How to install

Three steps in the bot or one command over SSH; installation takes about 60 seconds.

  1. 01

    Choose a plan in the bot

    Open @ExpressHost_bot and pay for a VPS. The server will be ready in about 60 seconds.

  2. 02

    Add 3x-ui

    At the “Add-ons” step pick the script from the library, or run it later: Server settings → Scripts.

  3. 03

    Finish the setup

    Save the panel address, username and password that the script prints at the end (Access URL)

Manually over SSH

Connect to the server as root and run the command. Supported systems: Ubuntu 22.04, Ubuntu 24.04, Debian 11, Debian 12, AlmaLinux 9.

Install command
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

Ports

3x-ui ports
PortProtocolPurpose
2053tcpWeb panel (default port; the installer suggests a random one)
443tcpTypically used for VLESS REALITY (configured in the panel)

After installation

  1. 1.Save the panel address, username and password that the script prints at the end (Access URL)
  2. 2.Forgot your credentials? Run x-ui and choose the option to show current settings or reset the login
  3. 3.Create a VLESS + REALITY inbound under Inbounds and add clients
  4. 4.Issue an SSL certificate for your domain via the x-ui menu to open the panel over HTTPS

3x-ui FAQ

Didn’t find an answer? Message @ExpressHost_SupportBot.

How many users can the plan handle?

The panel barely loads the server; resources go to Xray. 1 vCPU and 2 GB RAM is enough for dozens of active clients; as you grow, keep an eye on CPU load and bandwidth.

How do I update 3x-ui?

Run x-ui update or use the x-ui menu. The installer verifies the archive checksum; settings and clients are preserved.

Where is the data stored?

The panel database is /etc/x-ui/x-ui.db, program files are in /usr/local/x-ui. To back up, just copy x-ui.db.

How is 3x-ui different from Marzban?

3x-ui installs without Docker and suits one or two servers. Marzban and Remnawave are stronger at multi-server setups and subscriptions for selling access.

3x-ui installs at checkout — in the bot.