Jak nainstalovat panel 3X-UI na VPS
Kompletní produkční návod: instalace panelu 3X-UI (Xray) na Ubuntu, zabezpečení webového rozhraní, certifikát TLS, inbound VLESS Reality, uživatelé a připojení klientů na počítači i telefonu.

3X-UI je webový panel pro Xray-core. Umožňuje spravovat inboundy (VLESS, VMess, Trojan, Shadowsocks a další), vydávat odkazy na předplatné, nastavovat limity provozu a data vypršení a sledovat živá spojení bez ruční úpravy JSON. Pokud už provozujete VPS, je to jeden z nejrychlejších způsobů, jak získat udržovatelný proxy zásobník místo jednorázové konfigurace, kterou za půl roku nikdo nechce sahat.
Tento návod je napsaný pro čistý Ubuntu 22.04 nebo 24.04, což je typický Linuxový obraz Hiddence po prvním startu. Nainstalujeme rozšířené sestavení MHSanaei 3X-UI, hned změníme všechna výchozí tajemství, schováme panel za HTTPS, otevřeme ve firewallu jen potřebné porty, vytvoříme inbound VLESS + Reality a projdeme klientské aplikace. Pokud už jste podle našeho článku stavěli Marzban, myšlenka je podobná — panel nad Xray — ale instalační cesta, rozložení souborů a denní práce jsou jiné. Nemíchejte oba panely na stejném serveru, dokud opravdu neumíte rozdělit porty.
Proč 3X-UI místo surového konfigu Xray
Surový konfig Xray stačí pro jednoho uživatele a jeden inbound. Jakmile přibudou kamarádi, rotace klíčů Reality nebo URL předplatného, které telefon importuje jedním klepnutím, panel ušetří hodiny. 3X-UI ukládá uživatele v lokální databázi, po změnách čistě restartuje Xray a nabízí kompaktní přehled provozu a stavu online. Sám o sobě není kouzelná vrstva anonymity: o chování v síti rozhoduje lokalita VPS, otisk TLS, typ inboundu a vaše provozní hygiena.
- Webové UI pro inboundy, klienty, provoz a vypršení místo ručního JSON
- Hotové odkazy předplatného pro v2rayN, v2rayNG, Streisand, Happ a podobné klienty
- Instalace jedním příkazem a zdokumentovaná cesta aktualizace
- Funguje na malém VPS (1 vCPU / 1 GB RAM stačí pro osobní použití)
- Root zůstává u vás — panel neposílá konfigy do cizího cloudu
Co potřebujete před začátkem
Nepřeskakujte doménu a firewall. Panel na HTTP na portu 2053 s výchozím heslem boti najdou během hodin. Připravte body níže a připojte se přes SSH jako root (nebo uživatel se sudo).
- Linux VPS s veřejnou IPv4 adresou (doporučeno Ubuntu 22.04/24.04)
- Alespoň 1 GB RAM a 10 GB disku; 2 GB je pohodlnější, pokud na serveru běží i další služby
- Přístup root nebo sudo přes SSH
- Doména nebo subdoména s A záznamem na IP VPS (potřeba pro slušný certifikát panelu)
- Asi 20–30 minut plus čekání na DNS, pokud jste A záznam právě vytvořili
Krok 1. Aktualizujte systém a nastavte časové pásmo
Nový VPS často má čekající bezpečnostní aktualizace a hodiny na UTC. Nejdřív balíčky, aby instalátor nebojoval se starým OpenSSL nebo curl. Časové pásmo pro samotný Xray není kritické, ale logy panelu a data vypršení certifikátů se čtou mnohem lépe.
ssh root@YOUR_VPS_IP
apt update && apt -y upgrade
apt -y install curl wget ca-certificates gnupg socat tar unzip
timedatectl set-timezone UTC
hostnamectl set-hostname panel
# Confirm DNS for your subdomain (should print your VPS IP):
dig +short panel.example.comKrok 2. Nainstalujte 3X-UI
Oficiální instalační skript sestavení MHSanaei 3X-UI stáhne nejnovější vydání, nainstaluje Xray-core, vytvoří službu systemd a vypíše URL prvního přihlášení. Výstup čtěte pozorně: je tam náhodná cesta a vygenerované jméno a heslo. Hned je zkopírujte do správce hesel. Pokud se skript zeptá na port panelu, nechte 2053 nebo zvolte volný vysoký port; zapamatujte si ho pro krok s firewallem.
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
# After install, useful commands:
x-ui # interactive menu (start/stop/restart, reset, update)
systemctl status x-ui # confirm the service is active
ss -tulpn | grep x-ui # see which port the panel listens onKrok 3. První přihlášení a okamžité utužení
Otevřete URL z výstupu instalátoru, obvykle http://YOUR_IP:2053/<náhodná-cesta>. Přihlaste se vygenerovanými údaji a jděte do Panel Settings (nebo Configuration). Změňte uživatelské jméno a heslo na jedinečné hodnoty. Pokud panel umí změnit webovou základní cestu, udělejte to — dlouhá náhodná cesta odřízne spoustu skenů. Nastavte naslouchací port, pokud chcete něco jiného než 2053. Uložte a restartujte panel z UI nebo přes systemctl restart x-ui a znovu se přihlaste na nové URL.
Pak zapněte dvoufaktorové ověření, pokud ho vaše sestavení nabízí, a vypněte nepoužívané šablony inboundů. V nastavení Xray nechte verzi jádra, která přišla s panelem, pokud nemáte konkrétní důvod pinovat jiné sestavení. Panel zatím nevystavujte na 80/443, pokud ty porty později zabere Reality nebo reverse proxy — vyberte jednu strategii a držte se jí.
- Okamžitě nahraďte vygenerované přihlášení administrátora
- Tajnou webovou cestu si nechte; panel nepřesouvejte na /
- Preferujte nestandardní port panelu a zapište si ho
- Toto heslo nikdy nepoužívejte u jiných služeb
Krok 4. Certifikát TLS pro panel
Prohlížeče na HTTP varují a posílat heslo administrátora otevřeně ve veřejné síti je špatný nápad. 3X-UI umí požádat o certifikát Let's Encrypt, pokud je port 80 volný a doména míří na tento VPS. V panelu otevřete sekci certifikátu / SSL, zadejte panel.example.com a požádejte o cert. Pokud je port 80 už obsazený, použijte tok DNS-01 nebo dejte dopředu Caddy/Nginx a reverse-proxy na 127.0.0.1:2053.
# Quick check that port 80 is free before the panel ACME challenge:
ss -tulpn | grep ':80'
# If you terminate TLS on Caddy instead of inside 3X-UI:
# Caddyfile example (panel stays on 127.0.0.1:2053):
# panel.example.com {
# reverse_proxy 127.0.0.1:2053
# }Krok 5. Vytvořte inbound VLESS Reality
V Inbounds vytvořte nový inbound. Solidní výchozí volba pro mnoho sítí je VLESS s Reality a TCP. Vyberte port, který není port panelu — 443 je běžný, pokud tam nic jiného neposlouchá; jinak vysoký TCP port a stejné číslo ve firewallu. Vygenerujte UUID prvního klienta, páry klíčů Reality v UI a nastavte dest / serverNames na legitimní cíl, který smíte napodobovat (známý web s TLS 1.3). Uložte inbound a ověřte, že se Xray přenačetl bez chyb v logách panelu.
Pak na tentýž inbound přidávejte další klienty: každý uživatel dostane UUID, volitelnou e-mailovou značku a volitelný limit provozu nebo času. Kopírujte odkaz na připojení nebo URL předplatného z řádku uživatele. Ty odkazy nedávejte do veřejných chatů; jsou ekvivalent hesla.
# On the server, confirm Xray is listening on the inbound port (example: 443):
ss -tulpn | grep -E ':443|:2053'
# Follow Xray logs if a client cannot connect:
journalctl -u x-ui -fKrok 6. Firewall — jen porty, které potřebujete
Na Ubuntu stačí UFW. Nejdřív povolte SSH, abyste se nezamkli venku, pak port panelu a port inboundu. Pokud z panelu žádáte certifikát Let's Encrypt, během vydání povolte i 80/tcp. Reality na 443 potřebuje 443/tcp (a ne panel na stejném portu).
ufw allow OpenSSH
ufw allow 2053/tcp comment '3x-ui panel (change if you picked another port)'
ufw allow 443/tcp comment 'VLESS Reality inbound'
# ufw allow 80/tcp comment 'only if panel ACME needs it'
ufw enable
ufw status verbosePřipojení klientů
Ve Windows umí v2rayN importovat odkaz VLESS ze schránky. Na Androidu totéž umí v2rayNG nebo podobný klient Xray z QR kódu. Na iOS použijte klienta s podporou VLESS Reality (například Streisand nebo Happ podle toho, co je u vás aktuálně k dispozici). Po importu profil zapněte a zkontrolujte seznam online v panelu. Pokud klient zůstane offline, obvykle vadí špatný port, zapnuté UDP u inboundu jen TCP, serverName Reality, který nesedí s dest, nebo lokální firewall na notebooku.
- Windows: v2rayN — import odkazu VLESS, směrování globálně nebo podle pravidel
- Android: v2rayNG — naskenujte QR ze stránky uživatele v panelu
- macOS / iOS: klient s VLESS + Reality; vložte stejný odkaz
- URL předplatného: přidejte ho v klientovi, aby rotace UUID nevyžadovala ruční import
Aktualizace, záloha a bezpečná reinstalace
Před každou aktualizací panelu stáhněte zálohu z UI (databáze + konfig) a uložte ji mimo VPS. Aktualizace obvykle jdou přes x-ui a volbu update v menu, nebo tentýž instalační skript, který pozná existující instalaci. Po aktualizaci ověřte, že služba systemd běží a inboundy pořád poslouchají. Pokud reinstalujete OS, obnovte zálohu v panelu místo ručního znovuvytváření každého UUID.
x-ui # choose update when prompted, or:
# bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
# Backup files commonly live under /etc/x-ui/ — copy them off-box:
ls -la /etc/x-ui/
# Example offsite copy:
# scp -r /etc/x-ui/ you@backup-host:~/x-ui-backup-$(date +%F)/Řešení problémů
Většina selhání prvního dne je DNS, porty nebo pole Reality. Projděte tento seznam, než panel reinstalujete. Reinstalace bez zálohy je způsob, jak přijít o každé UUID klienta.
- Neotevře se webové UI: zkontrolujte systemctl status x-ui, ss -tulpn a UFW. V URL musí být tajná cesta.
- Zapomenuté heslo administrátora: na serveru spusťte x-ui a použijte volbu resetu.
- Klient se připojí a visí: port inboundu zablokovaný, nebo je zapnuté UDP u TCP Reality.
- Chyby TLS panelu: A záznam sem ještě nemíří, nebo je port 80 během ACME obsazený.
- Handshake Reality selže: neshoda dest/serverNames, nebo na 443 už poslouchá jiná služba.
- Vysoké CPU: moc inboundů na tarifu 1 vCPU, nebo sken/flood na otevřeném portu — zkontrolujte ss a počet online v panelu.
Bezpečnostní poznámky, na kterých opravdu záleží
Berte panel jako produkční administrační software. Umí zakládat uživatele a číst každé UUID. Omezte, kdo dosáhne na webový port: pokud máte stabilní IP kanceláře, v UFW pro 2053/tcp povolte jen ji. SSH na klíčích, ne na heslech. Na stejné IP nespouštějte nesouvisející veřejné weby, pokud Reality sedí na 443 — soupeřící zásobníky TLS na jednom portu jsou klasický zdroj výpadků. Heslo administrátora otočte, pokud snímek panelu někdy unikl do chatu.
- Jen SSH klíče; přihlášení heslem vypněte, až klíče fungují
- Port panelu ve firewallu zužte, když můžete
- Zálohujte /etc/x-ui mimo server podle plánu
- URL předplatného nesdílejte ve veřejných skupinách Telegram
- Hlídejte disk: logy a statistiky provozu na rušném inboundu rostou
Praktické tipy
- Jeden inbound s mnoha klienty se provozuje lépe než deset skoro stejných
- Pojmenujte klienty podle zařízení (notebook-anna, telefon-ben), ať grafy provozu dávají smysl
- Pokud potřebujete i reverse proxy pro web, dejte ho na jiné IP nebo jiný port — nebojujte s Reality o 443
- Po každém restartu x-ui otestujte jednoho klienta, než relaci SSH zavřete
- Před aktualizací čtěte changelog; v pátek večer neskákejte na latest
Máte 3X-UI jako službu systemd, uzamčené URL administrátora, TLS na panelu, inbound VLESS Reality, pravidla firewallu, která sedí s těmito porty, a zvyk zálohovat. Klienty přidávejte ze stránky inboundu, odkaz importujte na každém zařízení a panel aktualizujte až po záloze. Když se něco rozbije, cesta k obnově je menu x-ui na VPS — ne plná reinstalace.