sdm-xray
Собственный анти-DPI туннель: форк Xray-core с кастомным
транспортом stealth. Клиент → своя VPS, трафик максимально похож на браузерный HTTPS.
Принцип
«Адаптивность, а не протокол»: транспорт меняет поведение (identity) быстрее, чем DPI успевает его описывать. Всё в одном процессе, одним JSON-конфигом, без панелей и внешних сервисов.
Что умеет:
- Свой транспорт поверх HTTP/2 (TLS 1.3 + uTLS chrome), мультиплексирование на одном канале
- Ротация туннельных путей на каждое соединение + ретрай со свежей identity при сбое
- Анти-пробиг: сервер зеркалит реальный сайт (по умолчанию wikipedia) — зонд видит настоящий многостраничный сайт на вашем домене (редиректы, HTML/CSS-ссылки переписаны)
- Padding/pacing под браузер, опции: ротация портов, rate-limit, decoy, REALITY
- По умолчанию только порт 443 (как браузер)
Установка сервера (свежая Ubuntu VPS)
Домен должен указывать A-записью на IP VPS, порт 80 открыт.
bash <(curl -fsSL https://git.my-handbook.ru/ded_ikar/sdm-xray/raw/main/install.sh) ваш-домен.ru
Скрипт: ставит бинарь + systemd, генерит UUID/ключ, получает Let's Encrypt, поднимает туннель на 443 с зеркалом. В конце печатает готовый клиентский конфиг и пароль панели.
Панель управления (sdm-panel)
Отдельный бинарь на VPS, слушает 127.0.0.1:8080 (наружу не торчит). Доступ через
SSH-туннель (трафик шифрован SSH):
ssh -L 8080:127.0.0.1:8080 root@<vps-ip>
# затем http://localhost:8080 (login: admin / пароль из вывода install.sh)
Возможности: статус, просмотр/правка config.json, ротация UUID+ключ, логи, рестарт xray.
Пароль хранится в /etc/xray/panel.json (root-only). Конфиг панели: bind/password.
Клиенты
- Windows: скачать
xray-stealth-client-windows-amd64.exeиз Releases, сохранитьclient-stealth.json(из вывода install.sh), запуститьxray-stealth-client-windows-amd64.exe run -c client-stealth.json, прокси SOCKS на127.0.0.1:10808. - Роутер:
xray-stealth-client-linux-arm64— положить в/tmp, тот же конфиг, SOCKS 127.0.0.1:10808 или TUN + policy routing.
Параметры stealthSettings
key, padMax, padProb, paceMs, paceJitterMs, path/paths, ports (опция),
bps (опция), target (зеркало), decoy/decoyEverySecs/decoyTarget (опция),
padProfile ("browser"|"uniform"), retries.
Сборка из исходников
Нужны Go 1.26, protoc, protoc-gen-go.
GOOS=linux GOARCH=amd64 go build -o xray-server-amd64 ./main # сервер
GOOS=linux GOARCH=arm64 go build -o xray-client-arm64 ./main # роутер
GOOS=windows GOARCH=amd64 go build -o xray-client-win.exe ./main # Windows
Транспорт: stealth/transport/internet/stealth/. Изменённые файлы upstream:
stealth/infra/conf/transport_internet.go, stealth/infra/conf/transport_method.go.
Лицензия и атрибуция
MPL-2.0. Форк Xray-core (XTLS) — https://github.com/XTLS/Xray-core. Новые файлы транспорта —
наш код; изменённые файлы upstream распространяются под MPL-2.0 (исходники приложены в stealth/).