3x-ui3x-ui
Начало работы

Установка

Установите 3x-ui с помощью официального скрипта (стабильная, фиксированная или dev-сборка), в автоматическом режиме / через cloud-init либо в Docker — и выберите SQLite или PostgreSQL.

3x-ui работает на широком спектре дистрибутивов Linux — Ubuntu, Debian, Armbian, Fedora, CentOS, RHEL, AlmaLinux, Rocky Linux, Oracle Linux, Amazon Linux, Virtuozzo, Arch, Manjaro, openSUSE (Tumbleweed/Leap), Alpine — а также в Windows, на архитектурах amd64, 386, arm64, armv7, armv6, armv5 и s390x.

Запускайте установочный скрипт от имени root (или через sudo). Он устанавливает службу, настраивает команду управления x-ui и включает автозапуск панели при загрузке.

Официальный скрипт — рекомендуемый способ. В процессе установки он генерирует случайные имя пользователя, пароль и путь доступа (базовый веб-путь), настраивает службу и устанавливает команду управления x-ui.

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

Чтобы установить конкретную версию, добавьте её тег:

pinned version
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh) v3.4.0

Чтобы установить скользящую dev-сборку (последний предварительный релиз по каждому коммиту из main — не стабильный релиз), передайте dev-latest:

rolling dev build
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh) dev-latest

По завершении запишите выведенные данные для входа и выполните x-ui, чтобы открыть меню управления, а затем переходите к разделу Первый вход.

В конфигурации Compose по умолчанию используется SQLite. Клонируйте репозиторий (или скопируйте его файлы docker-compose.yml и Dockerfile) и запустите:

docker compose up -d

Чтобы запустить со встроенной службой PostgreSQL, раскомментируйте две строки XUI_DB_* в docker-compose.yml и запустите с соответствующим профилем:

docker compose --profile postgres up -d

Предпочитаете готовый образ? Он публикуется в GitHub Container Registry. Образ включает Fail2ban (для ограничений по IP), который блокирует через iptables и поэтому требует NET_ADMIN (а для IPv6 — ещё и NET_RAW); в противном случае блокировки логируются, но никогда не применяются:

docker run
docker run -d \
  --cap-add=NET_ADMIN \
  --cap-add=NET_RAW \
  -e XUI_ENABLE_FAIL2BAN=true \
  -v $PWD/db/:/etc/x-ui/ \
  -v $PWD/cert/:/root/cert/ \
  --network=host \
  --restart=unless-stopped \
  --name 3x-ui \
  ghcr.io/mhsanaei/3x-ui:latest

Том db/ хранит базу данных SQLite (/etc/x-ui/x-ui.db), а cert/ — TLS-сертификаты, поэтому ваши данные сохраняются при обновлениях.

Опытные пользователи могут скачать архив релиза для своей архитектуры со страницы релизов, распаковать его и запустить бинарный файл как службу systemd. Установочный скрипт автоматизирует ровно эти шаги, поэтому он предпочтительнее, если только у вас нет особой причины устанавливать вручную.

Сформируйте команду установки

Подстройте команду под свою конфигурацию:

Install command builder

Build the exact install command for your setup. It is assembled in your browser.

blank = latest stable · a tag like v3.4.0 · or dev-latest for the rolling dev build
Run on your server
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

Выберите базу данных

Хранилище выбирается на этапе установки:

  • SQLite (по умолчанию) — единственный файл по пути /etc/x-ui/x-ui.db. Без какой-либо настройки.
  • PostgreSQL — для большого числа клиентов или конфигураций с несколькими узлами. Установщик может развернуть её локально либо использовать предоставленный вами DSN.

Подробности и миграцию SQLite→PostgreSQL см. в разделе База данных.

Автоматическая установка / cloud-init

Установщик также работает в неинтерактивном режиме для автоматизации. Задайте XUI_NONINTERACTIVE=1 (или запустите без TTY), и он выполнит установку от начала до конца без единого запроса, сгенерировав случайные учётные данные и записав их в /etc/x-ui/install-result.env:

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

В каталоге deploy/ репозитория есть готовые cloud-init user-data для автоматической установки в любом облаке (Hetzner, AWS, DigitalOcean, Vultr, GCP, Azure, Oracle).

Дальнейшие шаги

On this page