Tornar al blog
Agost 19, 2026Guies

Com instal·lar el panell 3X-UI en un VPS

Una guia completa, orientada a producció, per instal·lar el panell 3X-UI Xray a l'Ubuntu, protegir la interfície web, emetre TLS, crear un inbound VLESS Reality, gestionar usuaris i connectar clients a l'escriptori i al mòbil.

Com instal·lar el panell 3X-UI en un VPS

3X-UI és un panell web per a Xray-core. Us permet gestionar inbounds (VLESS, VMess, Trojan, Shadowsocks i d'altres), emetre enllaços de subscripció, establir límits de trànsit i dates de caducitat, i veure les connexions en directe sense editar JSON a mà. Per a qui ja té un VPS, és una de les maneres més ràpides d'obtenir una pila de proxy mantenible en lloc d'una configuració d'un sol ús que ningú no pot actualitzar sis mesos després.

Aquesta guia està escrita per a un VPS Ubuntu 22.04 o 24.04 nou, que és com es veuen la majoria d'imatges Linux de Hiddence després del primer arrencada. Instal·larem la compilació MHSanaei 3X-UI, àmpliament utilitzada, canviarem cada secret per defecte al primer inici de sessió, posarem el panell darrere d'HTTPS, obrirem només els ports que realment necessiteu, crearem un inbound VLESS + Reality i després recorrerem les aplicacions client. Si ja heu seguit el nostre article de Marzban, la idea és similar — un panell a sobre d'Xray — però el camí d'instal·lació, la disposició de fitxers i el flux de treball diari són diferents, així que no barregeu tots dos al mateix servidor tret que realment sapigueu com dividir els ports.

Per què 3X-UI en lloc d'una configuració Xray en brut

Una configuració Xray en brut està bé per a un sol usuari i un sol inbound. En el moment que afegiu amics, roteu les claus Reality o necessiteu un URL de subscripció que els telèfons puguin importar d'un toc, un panell estalvia hores. 3X-UI desa els usuaris en una base de dades local, pot reiniciar Xray netament després dels canvis i exposa un tauler compacte per al trànsit i l'estat en línia. No és una capa màgica d'anonimat per si sola: la ubicació del VPS, l'empremta TLS, el tipus d'inbound i la vostra pròpia higiene operativa encara decideixen com es comporta la configuració a la xarxa.

  • Interfície web per a inbounds, clients, trànsit i caducitat en lloc de JSON editat a mà
  • Enllaços de subscripció integrats per a v2rayN, v2rayNG, Streisand, Happ i clients similars
  • Instal·lació d'una sola comanda més un camí d'actualització documentat
  • Funciona bé en un VPS petit (1 vCPU / 1 GB de RAM n'hi ha prou per a ús personal)
  • Conserveu el root al vostre servidor — el panell no envia configuracions a un núvol de tercers

Què necessiteu abans de començar

No us salteu les parts del domini i del tallafoc. Un panell deixat a HTTP al port 2053 amb la contrasenya per defecte el recorren els bots en qüestió d'hores. Prepareu aquests elements i després connecteu-vos com a root (o un usuari sudo) per SSH.

  • Un VPS Linux amb una adreça IPv4 pública (es recomana Ubuntu 22.04/24.04)
  • Com a mínim 1 GB de RAM i 10 GB de disc; 2 GB de RAM és més còmode si també executeu altres serveis
  • Accés root o sudo per SSH
  • Un domini o subdomini amb un registre A apuntant a la IP del VPS (necessari per a un certificat correcte del panell)
  • Uns 20–30 minuts, més el temps d'espera del DNS si acabeu de crear el registre A

Pas 1: Actualitzeu el sistema i establiu la zona horària

Un VPS nou sovint té actualitzacions de seguretat pendents i UTC com a rellotge. Actualitzeu primer els paquets perquè l'instal·lador no lluiti contra un OpenSSL o curl antiquats. Establir la zona horària és opcional per a Xray en si, però fa que els registres del panell i les dates de caducitat dels certificats siguin molt més fàcils de llegir.

bash
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.com

Pas 2: Instal·leu 3X-UI

L'script d'instal·lació oficial de la compilació MHSanaei 3X-UI descarrega l'última versió, instal·la Xray-core, crea un servei systemd i imprimeix l'URL del primer inici de sessió. Llegiu la sortida amb atenció: conté un camí aleatori i un nom d'usuari/contrasenya generats. Copieu-los immediatament a un gestor de contrasenyes. Si l'script pregunta pel port del panell, o bé conserveu el 2053 o trieu un port alt no utilitzat; recordeu-lo per al pas del tallafoc.

bash
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 on
Mantingueu aquesta sessió SSH oberta. Si us tanqueu fora del panell, el menú x-ui del servidor pot restablir la contrasenya d'administrador sense reinstal·lar.

Pas 3: Primer inici de sessió i enduriment immediat

Obriu l'URL que ha imprès l'instal·lador, normalment http://YOUR_IP:2053/<camí-aleatori>. Inicieu sessió amb les credencials generades i aneu a Configuració del panell (o Configuration). Canvieu el nom d'usuari i la contrasenya per valors únics. Si el panell us deixa canviar el camí base web, feu-ho — un camí aleatori llarg talla una quantitat enorme d'escanejos oportunistes. Establiu el port d'escolta si en voleu un altre que no sigui el 2053. Deseu i reinicieu el panell des de la interfície o amb systemctl restart x-ui, i després torneu a iniciar sessió a la nova URL.

A continuació, activeu l'autenticació de dos factors si la vostra compilació l'ofereix, i desactiveu les plantilles d'inbound que no fareu servir mai. A la configuració d'Xray, deixeu la versió del nucli que va venir amb el panell tret que tingueu un motiu específic per fixar-ne una altra. No exposeu encara el panell als ports 80/443 si més endavant els faran servir Reality o un servidor intermediari invers — trieu una estratègia i mantingueu-la.

  • Substituïu immediatament l'inici de sessió d'administrador generat
  • Conserveu el camí web secret; no moveu el panell a /
  • Preferiu un port de panell no per defecte i anoteu-lo
  • No reutilitzeu mai aquesta contrasenya en altres serveis

Pas 4: Certificat TLS per al panell

Els navegadors avisaran a HTTP, i enviar la contrasenya d'administrador en text clar en una xarxa pública és una mala idea. 3X-UI pot sol·licitar un certificat Let's Encrypt si el port 80 està lliure i el domini apunta a aquest VPS. Al panell, obriu la secció de certificat / SSL, introduïu panel.example.com i sol·liciteu el certificat. Si el port 80 ja està ocupat, utilitzeu un flux DNS-01 o poseu Caddy/Nginx al davant i feu un reverse-proxy a 127.0.0.1:2053.

bash
# 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
# }
El certificat del panell és només per a la interfície web. VLESS Reality fa servir una història TLS diferent (es camufla com un altre lloc) i no utilitza aquest fitxer de Let's Encrypt per al trànsit dels clients.

Pas 5: Creeu un inbound VLESS Reality

A Inbounds, creeu un inbound nou. Un valor per defecte sòlid per a moltes xarxes és VLESS amb Reality i TCP. Trieu un port que no sigui el del panell — el 443 és habitual si no hi ha res més enllaçat allà; en cas contrari utilitzeu un port TCP alt i sigueu coherents al tallafoc. Genereu un UUID per al primer client, genereu parells de claus Reality a la interfície, i establiu dest / serverNames a un objectiu legítim que tingueu permís d'imitar (un lloc conegut que admeti TLS 1.3). Deseu l'inbound i confirmeu que Xray es recarrega sense errors als registres del panell.

Després afegiu clients extra a aquest inbound si els necessiteu: cada usuari obté un UUID, una etiqueta de correu opcional i un límit opcional de trànsit o de temps. Copieu l'enllaç de connexió o l'URL de subscripció de la fila de l'usuari. No publiqueu aquests enllaços a xats públics; equivalen a una contrasenya.

bash
# 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 -f

Pas 6: Tallafoc — només els ports que necessiteu

UFW a l'Ubuntu n'hi ha prou. Permeteu primer SSH perquè no us tanqueu fora, després el port del panell i el port de l'inbound. Si heu sol·licitat un certificat Let's Encrypt des del panell, també permeteu 80/tcp durant l'emissió. Un inbound Reality al 443 necessita 443/tcp (i no el panell al mateix port).

bash
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 verbose

Connecteu els clients

A Windows, v2rayN pot importar un enllaç VLESS des del porta-retalls. A Android, v2rayNG o clients Xray similars fan el mateix des d'un codi QR. A iOS, utilitzeu un client que admeti VLESS Reality (per exemple Streisand o Happ, segons el que estigui disponible actualment a la vostra regió). Després d'importar, activeu el perfil i comproveu la llista en línia del panell. Si el client es queda fora de línia, les causes habituals són un port incorrecte, UDP deixat encès per a un inbound només TCP, un serverName de Reality que no coincideix amb dest, o un tallafoc local a l'ordinador portàtil.

  • Windows: v2rayN — importeu l'enllaç VLESS, configureu l'encaminament com necessiteu (global vs basat en regles)
  • Android: v2rayNG — escanegeu el QR des de la pàgina d'usuari del panell
  • macOS / iOS: un client amb suport de VLESS + Reality; enganxeu el mateix enllaç
  • URL de subscripció: afegiu-lo al client perquè les rotacions d'UUID no requereixin una reimportació manual

Actualitzacions, còpia de seguretat i seguretat de reinstal·lació

Abans de cada actualització del panell, baixeu una còpia de seguretat des de la interfície (base de dades + configuració). Deseu-la fora del VPS. Les actualitzacions solen ser x-ui i després l'opció d'actualització del menú, o el mateix script d'instal·lació que detecta una instal·lació existent. Després d'una actualització, confirmeu que el servei systemd està actiu i que els inbounds encara escolten. Si reinstal·leu el sistema operatiu, restaureu la còpia de seguretat al panell en lloc de recrear cada UUID a mà.

bash
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)/

Resolució de problemes

La majoria de fallades del primer dia són DNS, ports o camps Reality. Recorreu aquesta llista abans de reinstal·lar el panell. Reinstal·lar sense còpia de seguretat és com la gent perd cada UUID de client.

  • No es pot obrir la interfície web: comproveu systemctl status x-ui, ss -tulpn i UFW. Confirmeu que heu inclòs el camí secret a l'URL.
  • Heu oblidat la contrasenya d'administrador: executeu x-ui al servidor i utilitzeu l'opció de restabliment.
  • El client es connecta i després s'atura: port d'inbound bloquejat, o heu activat UDP en un inbound Reality TCP.
  • Errors TLS al panell: el registre A del domini encara no apunta aquí, o el port 80 està ocupat durant ACME.
  • El handshake Reality falla: desajust dest/serverNames, o un altre servei ja està enllaçat al 443.
  • CPU alta: massa inbounds en un pla d'1 vCPU, o un escaneig/inundació en un port obert — comproveu ss i el recompte en línia del panell.

Notes de seguretat que realment importen

Tracteu el panell com a programari d'administració de producció. Pot crear usuaris nous i llegir cada UUID. Limiteu qui pot arribar al port web: si teniu una IP d'oficina estable, permeteu només aquesta IP a UFW per a 2053/tcp. Mantingueu SSH amb claus, no amb contrasenyes. No executeu llocs web públics no relacionats a la mateixa IP si feu servir Reality al 443 — piles TLS competidores en un sol port són una font clàssica d'interrupcions. Roteu la contrasenya d'administrador si alguna captura de pantalla del panell s'ha filtrat mai a un xat.

  • Només claus SSH; desactiveu l'inici de sessió amb contrasenya un cop les claus funcionin
  • Restringiu el port del panell al tallafoc quan pugueu
  • Feu còpies de /etc/x-ui fora del servidor amb una programació
  • No compartiu URL de subscripció en grups públics de Telegram
  • Vigileu el disc: els registres i les estadístiques de trànsit creixen en un inbound ocupat

Consells pràctics

  • Un inbound amb molts clients és més fàcil d'operar que deu inbounds gairebé idèntics
  • Anomeneu els clients per dispositiu (laptop-anna, phone-ben) perquè els gràfics de trànsit tinguin sentit
  • Si també necessiteu un servidor intermediari invers per a un lloc web, poseu el lloc en una altra IP o un altre port — no lluiteu amb Reality pel 443
  • Després de qualsevol reinici de x-ui, proveu un client abans de deixar la sessió SSH
  • Llegiu el registre de canvis abans d'actualitzar; salteu els salts a 'latest' un divendres a la nit

Ara teniu 3X-UI instal·lat com a servei systemd, un URL d'administrador protegit, TLS al panell, un inbound VLESS Reality, regles de tallafoc que coincideixen amb aquests ports i l'hàbit de fer còpies de seguretat. Afegiu clients des de la pàgina d'inbound, importeu l'enllaç a cada dispositiu i actualitzeu el panell només després d'una còpia de seguretat. Si alguna cosa es trenca, el menú x-ui del VPS és el camí de recuperació — no una reinstal·lació completa.