Стандартная схема Reality+Xray базируется на принципе «не пойман — не вор»: зонд без правильного SNI перенаправляется на легитимный сайт и уходит. Однако если зонд знает точный SNI и активно сканирует сервер, простая схема перестает работать.
Автор столкнулся с такой ситуацией в Беларуси, где за три дня работы детектора не было обнаружено «глупых» зондов с пустым SNI, а только методичные подключения с корректным google.com и аномалиями. Для усиления защиты была внедрена система из двух уровней:
- Детектор — анализирует логи nginx и сетевые данные, начисляя очки подозрительности по поведению
- Серый список — автоматически перенаправляет обнаруженных зондов на fallback-сайт, не позволяя им получить доступ к VPN
Главная идея — зонд не должен понимать, что его вычислили. Он получает ожидаемый ответ и уходит с ощущением, что ничего подозрительного нет. В отличие от блокировки через iptables, которая вызывает таймауты и может вызвать подозрения, перенаправление на нормальный сайт с валидным TLS-сертификатом выглядит как обычная работа сервера.
Архитектура построена на Docker-контейнерах с nginx, который читает SNI из ClientHello без расшифровки трафика, и применяет правила серого списка для маршрутизации трафика. Серый список хранится в отдельном конфигурационном файле, обновляемом динамически без прерывания соединений.
Детектор использует поведенческий анализ с учётом множества признаков (отсутствие SNI, частота подключений, время появления запросов) и начисляет очки подозрительности, что позволяет выявлять даже «умные» зонды, корректно формирующие SNI.
Для сбора данных применяется tcpdump с ротацией файлов каждые 5 минут, что помогает анализировать TCP-финерпринты и выявлять аномалии.
В итоге, такой комплексный подход с обманом зондов, корреляцией по времени и автоматическим обновлением позволяет отсеивать около 90% автоматических сканеров, обеспечивая эффективную защиту VPN-инфраструктуры.
Автор подчёркивает, что защита от DPI — это непрерывная игра в кошки-мышки, где автоматизация и гибкие эвристики являются ключом к успеху.
