Документация
Полное руководство по настройке мониторинга сайтов с PingZen. Документация API, примеры кода и лучшие практики.
Мониторинг серверов Telegram MTProto Proxy с помощью PingZen. MTProxy использует проприетарный протокол MTProto с обфускацией Fake TLS для обхода DPI-блокировок. PingZen выполняет криптографическую валидацию handshake и проверяет, что прокси работает, принимает секрет и доводит трафик до Telegram.
Для чего подходит
Прокси для вашего сообщества
Порт 443 открыт почти везде: за ним может стоять ваш прокси, обычный сайт или DPI-заглушка. Зелёная TCP-проверка про это ничего не говорит, а MTProto-рукопожатие — говорит.
Секрет: принимается или нет
Прокси с неверным секретом не ломается — он начинает вести себя как обычный сайт (domain fronting). PingZen проверяет HMAC криптографически, поэтому такой прокси становится красным, а не остаётся зелёным.
Блокировка провайдером или DPI
Сам сервер может быть жив, а путь до него из конкретной сети — перекрыт. Проверка идёт снаружи, из выбранного вами региона, поэтому видно разницу между «прокси упал» и «прокси заблокировали».
Для чего не подходит
Проверка выполняет настоящее MTProto-рукопожатие с вашим прокси. На эти вопросы она не отвечает:
| Что нужно узнать | Что использовать |
|---|---|
| Работает ли SOCKS5-прокси? | Монитор SOCKS5 |
| Скоро ли истечёт сертификат домена прикрытия? | Следить не за чем — режим EE использует FakeTLS, поддельное рукопожатие без настоящего сертификата |
| Не лежит ли сам Telegram? | Вне области проверки — она доказывает, что ваш прокси доводит трафик до дата-центра Telegram, а не что Telegram здоров |
| Доходит ли прокси до всех дата-центров Telegram? | Не покрывается — запрос уходит только в дата-центр 2. Прокси, который не видит другой дата-центр, остаётся зелёным, хотя пользователи с аккаунтом в этом дата-центре через него не подключатся |
| Открывается ли сайт через прокси? | HTTP-монитор проверяет сайт напрямую |
Как это работает
- PingZen подключается к вашему MTProxy серверу по TCP (обычно порт 443)
- Для EE-секретов (Fake TLS): отправляет TLS 1.3 ClientHello с HMAC-SHA256 аутентификацией в поле Random
- Прокси отвечает ServerHello с собственным HMAC — PingZen его проверяет; несовпадение означает неверный секрет или ответ обычного сайта (domain fronting), и проверка падает
- PingZen открывает obfuscated2-канал (AES-256-CTR, ключи выводятся из секрета) — для EE внутри TLS Application Data, для DD/plain напрямую — и отправляет MTProto-запрос
req_pq_multiв дата-центр 2 Telegram - Прокси должен переслать запрос в Telegram: проверка зелёная, только если от дата-центра вернулся
resPQс nonce, который отправил PingZen. Если HMAC верный, а в ответ ничего не пришло, проверка падает с ошибкой «Прокси отвечает (HMAC верный), но не ретранслирует трафик в дата-центр Telegram»
Время ответа охватывает весь путь: разрешение имени хоста, TCP-подключение, FakeTLS-рукопожатие (только для EE) и один запрос через прокси в дата-центр Telegram и обратно.
Уровни проверки
PingZen выполняет многоуровневую валидацию в зависимости от формата секрета:
FakeTLS HMAC + ретрансляция MTProto (EE-секреты)
HMAC доказывает, что прокси знает ваш секрет, и ловит domain fronting (неверный секрет → прокси перенаправляет на реальный сайт). Затем MTProto-запрос (req_pq) уходит через FakeTLS-канал в Telegram и доказывает, что прокси действительно ретранслирует трафик — живой прокси без связи с Telegram станет красным.
Obfuscated2 + ретрансляция MTProto (DD/plain секреты)
Отправляет зашифрованный AES-256-CTR init payload, затем MTProto-запрос (req_pq) через прокси в Telegram. Такие прокси молча принимают init, собранный с неверным секретом, поэтому и секрет, и ретрансляцию доказывает только ответ Telegram.
TCP-подключение
Базовая проверка TCP-порта. Подтверждает доступность сервера, но не может проверить валидность секрета.
Форматы секретов
MTProxy поддерживает три формата секретов. Современные прокси используют практически исключительно EE (Fake TLS):
Plain (32 hex символа)
Оригинальный формат. 16-байтный секрет без префикса обфускации. Легко детектируется DPI. Пример: cafe1234cafe1234cafe1234cafe1234
DD (dd + 32 hex символа)
Режим padded intermediate. Добавляет случайное дополнение к размерам пакетов, затрудняя fingerprinting DPI. Пример: ddcafe1234cafe1234cafe1234cafe1234
EE (ee + 32 hex + hex домена)
Режим Fake TLS — текущий стандарт. Трафик выглядит как HTTPS к указанному домену. Пример: ee0123456789abcdef0123456789abcdef676f6f676c652e636f6d (домен: google.com)
Настройка
Адрес сервера
Имя хоста или IP-адрес с портом (например, proxy.example.com:443). Порт по умолчанию: 443.
Секрет
Секрет MTProxy в hex или base64 формате. Поддерживает три формата: plain (32 hex символа), DD (dd + 32 hex), и EE (ee + 32 hex + hex-кодированный домен) для режима Fake TLS.
SOCKS5 vs MTProxy
Оба протокола могут проксировать трафик Telegram, но существенно отличаются по устойчивости к DPI:
| Параметр | SOCKS5 | MTProxy |
|---|---|---|
| Устойчивость к DPI | Нет — handshake RFC 1928 легко определяется | Высокая — Fake TLS выглядит как обычный HTTPS |
| Область применения | Любое TCP/UDP приложение | Только Telegram |
| Аутентификация | Логин/пароль (RFC 1929) | 16-байтный общий секрет (HMAC-SHA256) |
| Порт | 1080 (по умолчанию) | 443 (имитирует HTTPS) |
| Валидация секрета | Протокольный handshake | Криптографическое HMAC-доказательство |
| Domain Fronting | Не применимо | Встроенный — невалидные клиенты видят реальный сайт |
Ключевые возможности
- Криптографическая валидация handshake (не просто TCP порт)
- Проверка FakeTLS (EE) HMAC-SHA256
- Поддержка всех форматов секретов: plain, DD и EE
- Обнаружение domain fronting для EE-секретов
- Понятные сообщения об ошибках при сбоях handshake
- Защита от SSRF — приватные IP-адреса заблокированы
- Без внешних зависимостей — чистые asyncio-сокеты Python
- End-to-end верификация для всех форматов секрета — EE, DD и plain — через MTProto req_pq, который прокси пересылает в дата-центр Telegram
- Работает с mtg, mtprotoproxy, Erlang mtproto_proxy и другими MTProxy серверами
Частые вопросы
Какие протоколы можно мониторить?
PingZen поддерживает 23 протокола: HTTP/HTTPS, WebSocket (WS/WSS), TCP, UDP, ICMP Ping, gRPC, DNS, WHOIS, TLS/SSL сертификаты, Email (SMTP/IMAP/POP3), FTP/FTPS, DNSBL, PageSpeed, SOCKS5, MTProxy, API Check и Transaction. Вы можете мониторить сайты, API, серверы, базы данных и любые сетевые сервисы.
Как быстро приходят оповещения?
Telegram оповещения доставляются в течение 1-2 секунд после обнаружения. Slack и Discord уведомления приходят практически мгновенно. Вы можете настроить несколько каналов оповещений для резервирования.
Можно ли организовать мониторы по проектам?
Да! PingZen поддерживает рабочие пространства, которые позволяют организовать мониторы по проектам, окружениям или командам. Каждое рабочее пространство может иметь свои настройки оповещений и участников.
Есть ли API для автоматизации?
Абсолютно. PingZen предоставляет полный REST API с OpenAPI документацией. Вы можете создавать, обновлять и удалять мониторы программно.
Как работают статус-страницы?
Статус-страницы — это публичные брендированные страницы, показывающие аптайм ваших сервисов. Вы можете отображать статус в реальном времени и позволить клиентам подписаться на обновления.
Что происходит, если я достигну лимита мониторов?
Мы уведомим вас при приближении к лимиту. Вы можете приостановить некоторые мониторы или связаться с нами для увеличения лимита. Мы никогда не останавливаем мониторинг без предупреждения, обеспечивая защиту ваших критически важных сервисов.
Готовы перестать пропускать даунтаймы?
Присоединяйтесь к тысячам команд, которые доверяют PingZen. Настройка за 30 секунд.