Изменения документа 1. 3x-ui MASSIVE script
Редактировал(а) Anton Krivchenkov 04.06.2026 00:06
От версии 2.1
отредактировано Anton Krivchenkov
на 30.05.2026 23:05
на 30.05.2026 23:05
Изменить комментарий:
К данной версии нет комментариев
К версии 1.1
отредактировано Anton Krivchenkov
на 30.05.2026 23:05
на 30.05.2026 23:05
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,3 +1,5 @@ 1 + 2 + 1 1 # Запуск скрипта 2 2 3 3 ффыв ... ... @@ -18,7 +18,7 @@ 18 18 | **Fail2ban & UFW** | Защита от брутфорса и строгий файрвол. Доступ к админ-панели и SSH ограничен по IP-адресам. | 19 19 | **TrafficGuard** | Блокировка известных IP-адресов сканеров и ботнетов на уровне ядра. | 20 20 21 - *23 +- 22 22 23 23 #### 🗺️ Карта сети и портов 24 24 ... ... @@ -33,7 +33,7 @@ 33 33 * **UDP 33005:** Транспорт mKCP (Слушает 3x-ui). 34 34 * **TCP {NODE_PORT}:** Прямой доступ к панели 3x-ui (открыт _только_ для IP-адреса балансировщика/админа). 35 35 36 - *38 +- 37 37 38 38 **🔒 Внутренние порты (127.0.0.1 / Закрыты снаружи):** 39 39 ... ... @@ -44,19 +44,26 @@ 44 44 * **TCP 10809:** HTTP Inbound в 3x-ui для распакованного трафика от NaiveProxy. 45 45 * **TCP 33000-33004:** Локальные порты транспортов Xray (VLESS TCP, XHTTP, gRPC, WS, HTTPUpgrade). 46 46 47 - *49 +- 48 48 49 49 #### 🔄 Логика маршрутизации трафика (Flow) 50 50 51 51 1. **Входящий запрос на TCP 443** попадает в блок Nginx stream. 52 52 1. Nginx проверяет IP клиента по graylist. Если клиент подозрительный — трафик принудительно отправляется на внутренний порт 4443 (и в итоге на сайт-камуфляж). 53 -1. Nginx читает SNI (Server Name Indication) из TLS ClientHello: * Если SNI совпадает с REALITY_SNI $\rightarrow$ трафик летит в 3x-ui на порт 8443 (Reality Inbound). * В противном случае $\rightarrow$ трафик отправляется во внутренний HTTP-блок на порт 4443. 54 -1. Во внутреннем HTTP-блоке (listen 4443) происходит разбор HTTP-запроса: * Если путь совпадает с секретным URL админки (/${PANEL_SECRET_PATH}/) $\rightarrow$ проксируется в панель 3x-ui. * Если путь совпадает с настроенными путями (XHTTP, gRPC, WS, Upgrade) $\rightarrow$ проксируется на соответствующий локальный порт 3300X. * Если это сканер, бот (bad agent) или левый путь $\rightarrow$ возвращается код 418 и трафик заворачивается на Nextcloud (порт 8080). 55 +1. 55 55 56 -- 57 +Nginx читает SNI (Server Name Indication) из TLS ClientHello: 58 + * Если SNI совпадает с REALITY_SNI $\rightarrow$ трафик летит в 3x-ui на порт 8443 (Reality Inbound). 59 + * В противном случае $\rightarrow$ трафик отправляется во внутренний HTTP-блок на порт 4443. 60 +1. 57 57 58 -* 62 +Во внутреннем HTTP-блоке (listen 4443) происходит разбор HTTP-запроса: 63 + * Если путь совпадает с секретным URL админки (/${PANEL_SECRET_PATH}/) $\rightarrow$ проксируется в панель 3x-ui. 64 + * Если путь совпадает с настроенными путями (XHTTP, gRPC, WS, Upgrade) $\rightarrow$ проксируется на соответствующий локальный порт 3300X. 65 + * Если это сканер, бот (bad agent) или левый путь $\rightarrow$ возвращается код 418 и трафик заворачивается на Nextcloud (порт 8080). 59 59 67 +- 68 + 60 60 #### 🛡️ Особые механизмы защиты 61 61 62 62 * **Fallback-сертификаты:** При отсутствии реальных SSL-сертификатов скрипт автоматически генерирует самоподписанные заглушки на 1 год, чтобы Nginx успешно запустился без fatal-ошибок.