JA4T-сплит целиком построен на находках двух проектов, а вся MTProto-часть работает на чужом прокси. Вот что взято и откуда.
Репозиторий: https://github.com/telemt/telemt
Прокси, на котором построена вся MTProto-часть стека. Не идея, не референс — сам софт, без которого этой части репозитория не существовало бы.
Что дал: fake-TLS и self-steal через mask_host/mask_port — ядро
маскировки под собственный сайт; локальный API для генерации ссылок;
поддержку proxy_protocol, без которой цепочка nginx → HAProxy → telemt
не собралась бы.
Автор: Mekotofeuka Репозиторий: https://github.com/Mekotofeuka/MTPROTO_FIX_By_MEKO Лицензия: MIT
Первоисточник идеи JA4T-сплита: клиенты Telegram, в первую очередь iOS, сваливались в бесконечный цикл переподключений из-за провайдерской фильтрации.
Что взято: классификация клиента по полному отпечатку TCP SYN вместо
TTL — ключевая находка, из которой вырос весь JA4T-сплит здесь; REJECT
вместо DROP в правиле лимита; требование OpenSSL 3.5+ к nginx для self-steal.
Автор: Liafanx Репозиторий: https://github.com/Liafanx/MTproxy-reanimation Лицензия: MIT
Развитие идеи MEKO до рабочей реализации на nftables.
Что взято: конкретные @th-офсеты правила, один в один —
@th,108,20 0x2ffff @th,160,16 0x204 @th,192,16 0x103
@th,224,24 0x10108 @th,320,32 0x4020000
— параметр лимита для не-iOS (54 соединения за 60 секунд), решение не
лимитировать iOS по умолчанию (NFT_IOS_LIMIT_ENABLED=false — ложное
срабатывание дороже риска подделки отпечатка), документация по эксплуатации
telemt, наблюдение про icmp-host-unreachable вместо tcp reset для Android
и десктопа, sysctl-тюнинг (keepalive, очереди, BBR).
Ни MEKO, ни Liafanx не упоминают JA4T, Reality, Xray, VLESS, 3x-ui или SNI-роутинг на nginx — оба работают на уровне TCP и занимаются исключительно MTProto.
| Компонент | Чьё |
|---|---|
Классификация по отпечатку TCP SYN, REJECT вместо DROP |
MEKO |
| Реализация на nftables, офсеты, параметры лимитов | Liafanx |
| Требование OpenSSL 3.5+, проверка PQ у SNI | MEKO |
| Тайминги telemt, sysctl-тюнинг | Liafanx |
| Сам MTProto-прокси: fake-TLS, self-steal, API, proxy_protocol | telemt |
| Соединение TCP-уровневого сплита с TLS-фронтом на nginx | этот репозиторий |
| Формализация приёма как JA4T и объяснение сплита по портам | этот репозиторий |
| Совместная работа MTProto и Reality на одном порту 443 | этот репозиторий |
| Измерения по ML-DSA65 и требованиям к сертификату таргета | этот репозиторий |
| Таблица диагностических сигнатур из логов nginx | этот репозиторий |
Проще говоря: находка про отпечаток TCP — не наша, прокси под ней — тоже. Наше — то, что всё это уживается с SNI-мультиплексированием и Reality на одном порту, и объяснение, почему это требует разводки по портам.
- Xray-core (XTLS) — Reality, VLESS,
xray tls pingдля измерений в 05-troubleshooting.md. - 3x-ui (MHSanaei) — панель управления.
- @Sni_checker_bot — проверка
X25519MLKEM768у домена.
Поддержите MEKO, Liafanx и telemt — без их работы этого репозитория бы не было.