Изменения документа 1. 3x-ui MASSIVE script
Редактировал(а) Anton Krivchenkov 04.06.2026 00:06
От версии 21.1
отредактировано Anton Krivchenkov
на 31.05.2026 15:05
на 31.05.2026 15:05
Изменить комментарий:
К данной версии нет комментариев
К версии 3.1
отредактировано Anton Krivchenkov
на 30.05.2026 23:05
на 30.05.2026 23:05
Изменить комментарий:
Загрузить новое вложение 3x_massive_script.sh
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
-
Вложения (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,33 +1,7 @@ 1 1 # Запуск скрипта 2 2 3 - curl -fsSL 'https://xwiki.dev0ps.online/xwiki/bin/download/DevOps/Proxy/3x-ui/1.%203x-ui%20MASSIVE%20script/WebHome/3x_massive_script.sh?rev=1.7' | sudo bash3 + ффыв 4 4 5 -### Как правильно обрабатывать UDP 443 (Hysteria2 / QUIC) 6 - 7 -Поскольку в твоем конфиге Nginx слушает listen 443; (по умолчанию это подразумевает только TCP), порт **UDP 443 остается свободным** на уровне операционной системы хоста. 8 - 9 -Лучший и самый производительный паттерн: 10 - 11 -* **TCP 443:** Оставь за Nginx (твой текущий конфиг). Он будет разбирать SNI и раскидывать трафик по бэкендам. 12 -* **UDP 443:** Настрой твой VPN-бэкенд (например, 3x-ui для Hysteria2) так, чтобы он напрямую слушал 0.0.0.0:443 по протоколу UDP. Они с Nginx не подерутся за порты, так как протоколы разные. 13 -* 14 - 15 -### Если всё-таки очень нужно проксировать UDP через Nginx 16 - 17 -Если твой бэкенд находится на другой машине (например, на 192.168.1.121) и у нее вообще нет внешнего IP для прямого прослушивания UDP, тебе придется создать **отдельный** блок server. 18 - 19 -Но помни: маршрутизировать UDP по доменам (SNI) в Nginx нельзя. Весь UDP-трафик с порта 443 придется отправлять строго на один конкретный IP: 20 - 21 - # Отдельный блок для 'глупого' проброса всего UDP 443 22 - server { 23 - listen 443 udp; 24 - listen [::]:443 udp; 25 - 26 - # ssl_preread здесь не работает. 27 - # Весь UDP трафик летит на указанный бэкенд. 28 - proxy_pass 192.168.1.121:443; 29 - } 30 - 31 31 # ПРО Скрипт 32 32 33 33 Скрипт представляет собой ультимативное решение для автоматизированного развертывания комбайна по обходу систем глубокой инспекции пакетов (DPI/ТСПУ). Основой служит панель **3x-ui** (ядро Xray), спрятанная за мультиплексором **Nginx** и защищенная эшелонированной системой безопасности. Дополнительно интегрированы **NaiveProxy** для маскировки под обычный браузерный трафик и **B4 DPI Bypass** для фрагментации пакетов. ... ... @@ -58,6 +58,7 @@ 58 58 * **TCP 7443:** Админ-панель B4 DPI Bypass (Nginx Auth). 59 59 * **UDP 33005:** Транспорт mKCP (Слушает 3x-ui). 60 60 * **TCP {NODE_PORT}:** Прямой доступ к панели 3x-ui (открыт _только_ для IP-адреса балансировщика/админа). 35 + 61 61 * 62 62 63 63 **🔒 Внутренние порты (127.0.0.1 / Закрыты снаружи):** ... ... @@ -68,6 +68,7 @@ 68 68 * **TCP 7000:** Процессор B4 DPI. 69 69 * **TCP 10809:** HTTP Inbound в 3x-ui для распакованного трафика от NaiveProxy. 70 70 * **TCP 33000-33004:** Локальные порты транспортов Xray (VLESS TCP, XHTTP, gRPC, WS, HTTPUpgrade). 46 + 71 71 * 72 72 73 73 #### 🔄 Логика маршрутизации трафика (Flow) ... ... @@ -77,8 +77,9 @@ 77 77 1. Nginx читает SNI (Server Name Indication) из TLS ClientHello: * Если SNI совпадает с REALITY_SNI $\rightarrow$ трафик летит в 3x-ui на порт 8443 (Reality Inbound). * В противном случае $\rightarrow$ трафик отправляется во внутренний HTTP-блок на порт 4443. 78 78 1. Во внутреннем HTTP-блоке (listen 4443) происходит разбор HTTP-запроса: * Если путь совпадает с секретным URL админки (/${PANEL_SECRET_PATH}/) $\rightarrow$ проксируется в панель 3x-ui. * Если путь совпадает с настроенными путями (XHTTP, gRPC, WS, Upgrade) $\rightarrow$ проксируется на соответствующий локальный порт 3300X. * Если это сканер, бот (bad agent) или левый путь $\rightarrow$ возвращается код 418 и трафик заворачивается на Nextcloud (порт 8080). 79 79 56 +- 57 + 80 80 * 81 -* 82 82 83 83 #### 🛡️ Особые механизмы защиты 84 84 ... ... @@ -85,61 +85,3 @@ 85 85 * **Fallback-сертификаты:** При отсутствии реальных SSL-сертификатов скрипт автоматически генерирует самоподписанные заглушки на 1 год, чтобы Nginx успешно запустился без fatal-ошибок. 86 86 * **DPI-Detector:** Скрипт (через awk) парсит suspicious.log Nginx'а в реальном времени. Если один IP-адрес ошибается 3 раза (обращается к камуфляжу или стучится не по тем путям), он автоматически заносится в graylist.conf, и Nginx перезагружается. 87 87 * **Маскировка Naive:** В конфигурацию Caddy добавлена директива probe_resistance secret.localhost, которая защищает порт 2053 от активного прощупывания сканерами. 88 - 89 -# NetPlan - поднимаем интерфейсы 90 - 91 -железобетонный Netplan 92 - 93 - sudo nano /etc/netplan/00-installer-config.yaml 94 - 95 -конфиг 96 - 97 -```bash 98 -network: 99 - version: 2 100 - renderer: networkd 101 - ethernets: 102 - # ── ОСНОВНОЙ ИНТЕРФЕЙС (Доступ в интернет и управление) ── 103 - enp6s18: 104 - addresses: 105 - - 192.168.1.180/24 106 - routes: 107 - - to: default 108 - via: 192.168.1.1 # Твой главный шлюз в интернет 109 - nameservers: 110 - addresses: [192.168.1.11, 192.168.1.1, 1.0.0.1, 8.8.8.8] 111 - 112 - # ── net1 (VLAN 50) ── 113 - enp6s19: 114 - addresses: 115 - - 192.168.50.180/24 116 - # Шлюз не указываем! Трафик внутри 192.168.50.x будет ходить идеально. 117 - 118 - # ── net2 (VLAN 10) ── 119 - enp6s20: 120 - addresses: 121 - - 192.168.10.180/24 122 - 123 - # ── net3 (VLAN 15) ── 124 - enp6s21: 125 - addresses: 126 - - 192.168.15.180/24 127 - 128 - # ── net4 (VLAN 11) ── 129 - enp6s22: 130 - addresses: 131 - - 192.168.11.180/24 132 - 133 - # ── net5 (VLAN 12) ── 134 - enp6s23: 135 - addresses: 136 - - 192.168.12.180/24 137 -``` 138 - 139 -Ограничь права на файл (код 600 означает: чтение и запись только для владельца-рута, остальным — ничего): 140 - 141 - sudo chmod 600 /etc/netplan/00-installer-config.yaml 142 - 143 -Применяешь 144 - 145 - sudo netplan apply
- 3x_massive_script.sh
-
- Размер
-
... ... @@ -1,1 +1,1 @@ 1 - 73.4KB1 +65.8 KB - Содержимое