3X-UI: Установка и настройка

Инструкция по установке и первичной настройке #3x-ui.

Установка

  • Скачать и распаковать 3x-ui версии v2.8.11:
1
v='v2.8.11'; d='/usr/local'; [[ -d "${d}/x-ui" ]] && rm -rf "${d}/x-ui"; curl -fSLo '/tmp/x-ui-linux-amd64.tar.gz' "https://github.com/MHSanaei/3x-ui/releases/download/${v}/x-ui-linux-amd64.tar.gz" && tar -xzf '/tmp/x-ui-linux-amd64.tar.gz' -C "${d}" && chmod +x "${d}/x-ui/x-ui.sh" && { [[ -L "${d}/bin/x-ui" ]] && unlink "${d}/bin/x-ui"; ln -s "${d}/x-ui/x-ui.sh" "${d}/bin/x-ui"; }
  • Скачать x-ui.service в директорию /etc/systemd/system и запустить службу:
1
f=('x-ui.service'); d='/etc/systemd/system'; s='https://libsys.ru/ru/2026/03/60a8071b-878a-510b-99bc-ec1951c4a915'; for i in "${f[@]}"; do curl -fsSLo "${d}/${i}" "${s}/${i}"; done && systemctl daemon-reload && { for i in "${f[@]}"; do systemctl enable --now "${i}"; done; }
  • Скачать задачу x-ui в директорию /etc/cron.d:
1
f=('x-ui'); d='/etc/cron.d'; s='https://libsys.ru/ru/2026/03/60a8071b-878a-510b-99bc-ec1951c4a915'; for i in "${f[@]}"; do curl -fsSLo "${d}/${i}" "${s}/${i}"; done && systemctl restart 'cron.service'

Настройка

Настроить панель можно по адресу http://SERVER_IP:2053/.

Безопасность

Для большей безопасности, необходимо изменить стандартные пути и порты панели. Идём в настройки и прописываем следующие параметры (можно поменять на свои):

  • Panel Settings:
    • General:
      • Listen Port: 64801.
      • URI Path: /0728a4S93v964W9y/.
    • Subscription:
      • Listen Port: 64802.
      • URI Path: /38s2ibK4728j71Tr/.

Обратный прокси

В качество обратного прокси я буду использовать Angie из статьи Angie: Установка и настройка. Также я усилил защиту панели HTTP-аутентификацией самого Angie. Начинаем настройку работы совместно с обратным прокси:

  • Создать ключ и сертификат в директории /etc/ssl/.
  • Создать файл /etc/angie/users.conf с пользователями и паролями при помощи этого сайта (режим Bcrypt).
  • Откорректировать настройки панели:
    • Panel Settings:
      • General:
        • Public Key Path: /etc/ssl/example.org.crt.
        • Private Key Path: /etc/ssl/example.org.key.
      • Subscription:
        • Reverse Proxy URI: https://example.org:64800/38s2ibK4728j71Tr/.
        • Public Key Path: /etc/ssl/example.org.crt.
        • Private Key Path: /etc/ssl/example.org.key.
  • Создать файл /etc/angie/http.d/example.org.conf со следующим содержанием:
angie.conf
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
server {
  listen 127.0.0.1:8443 ssl;
  server_name example.org;

  ssl_certificate '/etc/ssl/example.org.crt';
  ssl_certificate_key '/etc/ssl/example.org.key';

  root '/usr/share/angie/html';
  index index.html;

  location / {
    try_files $uri $uri/ =404;
  }
}

server {
  listen 64800 ssl;
  server_name cp.example.org;

  ssl_certificate '/etc/ssl/example.org.crt';
  ssl_certificate_key '/etc/ssl/example.org.key';

  location /0728a4S93v964W9y {
    auth_basic 'Restricted Area';
    auth_basic_user_file '/etc/angie/users.conf';

    proxy_http_version 1.1;
    proxy_set_header 'Upgrade' $http_upgrade;
    proxy_set_header 'Connection' 'upgrade';

    proxy_set_header 'X-Forwarded-For' $proxy_add_x_forwarded_for;
    proxy_set_header 'X-Forwarded-Proto' $scheme;
    proxy_set_header 'Host' $http_host;
    proxy_set_header 'X-Real-IP' $remote_addr;
    proxy_set_header 'Range' $http_range;
    proxy_set_header 'If-Range' $http_if_range;

    proxy_redirect off;
    proxy_pass https://127.0.0.1:64801/0728a4S93v964W9y;
  }

  location /38s2ibK4728j71Tr {
    proxy_http_version 1.1;
    proxy_set_header 'Upgrade' $http_upgrade;
    proxy_set_header 'Connection' "upgrade";

    proxy_set_header 'X-Forwarded-For' $proxy_add_x_forwarded_for;
    proxy_set_header 'X-Forwarded-Proto' $scheme;
    proxy_set_header 'Host' $http_host;
    proxy_set_header 'X-Forwarded-Host' $http_host;
    proxy_set_header 'X-Forwarded-Port' $server_port;
    proxy_set_header 'X-Real-IP' $remote_addr;
    proxy_set_header 'Range' $http_range;
    proxy_set_header 'If-Range' $http_if_range;

    proxy_redirect off;
    proxy_pass https://127.0.0.1:64802/38s2ibK4728j71Tr;
  }
}

Клиенты

Для работы VLESS+Reality необходимо добавить клиентов со следующими настройками:

  • Protocol: vless.
  • Port: 443.
  • Total Flow: 900.
  • Traffic Reset: Monthly.
  • Transmission: TCP (RAW).
  • В разделе Security выбрать Reality:
    • uTLS: chrome.
    • Target: 127.0.0.1:8443.
    • SNI: example.org.
    • Нажать кнопку Get New Cert для генерации сертификата.
  • Включить Sniffing:
    • Включить: HTTP.
    • Включить: TLS.
    • Включить: QUIC.
    • Включить: FAKEDNS.
  • В разделе Client добавить клиента с параметрами:
    • Flow: xtls-rprx-vision
    • Total Flow: 100
Авторы
Мета
Лицензия
ID файла
UUID
Системный путь
Тип
Статистика
Количество слов
Время чтения
мин.