Как настроить свой MTProto-прокси для Telegram

· Антон Беляев

Свой MTProto-прокси — это процесс на вашем VPS, к которому подключаются клиенты Telegram, и который дальше проксирует их трафик в дата-центры мессенджера. Запустить его несложно: нужны сам сервер с белым IP, открытый порт и сгенерированный secret. Дальше выдаёте пользователям ссылку tg://proxy — и они подключаются в один тап.

Главное отличие от публичных прокси из Telegram-каналов — стабильность и контроль. Никто, кроме вас, не сжигает IP массовым трафиком, никто не выключит прокси «потому что надоело платить за VPS», и вы сами решаете, давать ли доступ другим людям.

Ниже — что нужно подготовить, какие параметры действительно важны и сколько в среднем живёт один MTProxy на одном IP.

Коротко

  • Нужны: VPS с белым IP, открытый порт (лучше 443), 1 ГБ RAM хватает с запасом.
  • Запустить можно из официального репозитория TelegramMessenger/MTProxy или через Docker.
  • Secret из 32 байт, в формате fake-TLS префикс ee и закодированный домен маскировки.
  • Ссылка для клиента: tg://proxy?server=<ip>&port=<port>&secret=<hex>.
  • Порт 443 проходит везде, где не порезан HTTPS — это почти любая сеть.
  • Один IP живёт от недель до месяцев, если не светить ссылку в публичных каналах.

Что нужно для запуска

Прокси сам по себе нетребовательный, но к серверу есть несколько важных требований.

VPS и сеть

Подойдёт самый дешёвый VPS (1 CPU, 1 ГБ RAM) у любого провайдера за пределами РФ. Главное — белый внешний IP без NAT и возможность открыть нужный порт. Безлимитный или щедрый трафик: 1 активный пользователь Telegram = десятки гигабайт в месяц, особенно если смотрит видео и каналы с медиа.

Порт

Технически работает любой свободный TCP-порт. На практике лучше 443: оператор почти никогда не режет исходящий HTTPS целиком, а MTProxy с fake-TLS будет идеально мимикрировать. Если 443 занят чем-то ещё (например, nginx) — поднимайте на 8443 или другом нестандартном.

MTProxy-сервер

Канонический вариант — собрать и запустить серверный код из репозитория github.com/TelegramMessenger/MTProxy. Он же есть в виде официального Docker-образа: hub.docker.com/r/telegrammessenger/proxy — поднимается одной командой и удобен для обновлений.

Secret

Это 32-байтовый ключ, который один и тот же на сервере и у клиента. Сервер генерирует его при запуске (есть утилита, есть готовые скрипты). Современный формат — fake-TLS: префикс ee + сам ключ + закодированное доменное имя (например, www.google.com). Под этот домен прокси и будет маскировать handshake.

Что важно при настройке

ПараметрРекомендацияПочему
Порт443 (или 8443)Не режется операторами, выглядит как HTTPS
Режим secretFake-TLS (префикс ee)Маскировка под TLS, сложнее детектировать DPI
Домен для маскировкиПопулярный сайт (cloudflare.com, googlevideo.com)Чем менее экзотический домен, тем меньше подозрений
Промо-каналОпционально, в TAG=...Telegram показывает закреплённый канал владельцам прокси
Лимит подключенийЗависит от RAM и каналаБез ограничений — VPS можно положить
ЛогиМинимум, без IP-адресовЗачем хранить чувствительные данные пользователей

Как проверить прямо сейчас

После запуска MTProxy первое, что нужно проверить — доступен ли он у разных операторов. Бывает, что VPS в популярной подсети (например, у DigitalOcean) уже в чьём-то фильтре, и прокси из РФ просто не отвечает, хотя у вас локально всё ок.

Freedom Checker умеет проверять доступность IP-адресов и сервисов с пробников в разных российских регионах и операторах. Прогоните свой VPS — и сразу станет ясно, где он доступен, а где нет.

Проверить доступность через Freedom Checker

Сбой или блокировка?

Сбой — это когда сам MTProxy не отвечает: упал процесс, кончилось место на диске, перезагрузился сервер. Симптом: прокси не работает ни у вас, ни у тестового пользователя в любой стране. Лечится перезапуском сервиса.

Блокировка — это когда сервер жив и отвечает извне, но не отвечает из конкретной сети. Симптом: ваш прокси доступен снаружи, но клиент в России висит на Connecting. Чаще всего это режется по IP/подсети у оператора. Менять надо не настройки прокси, а IP — взять новый VPS в менее «горячей» подсети.

На что обратить внимание

  • Не публикуйте ссылку в больших открытых каналах — IP попадёт под массовую блокировку за дни.
  • Делитесь только tg://proxy-ссылкой, secret в чистом виде не нужен.
  • Заведите cron на бэкап конфига и автоматический рестарт сервиса при падении.
  • Следите за трафиком VPS — провайдер может отключить за превышение.
  • Меняйте порт/домен маскировки, если прокси внезапно перестал работать у части пользователей.
  • Не используйте VPS в подсетях, которые уже массово ассоциированы с MTProxy.
  • Никаких логов с IP-адресами клиентов — это и про приватность, и про вашу безопасность.

Вывод

Свой MTProxy на VPS — это устойчивая альтернатива публичным прокси из открытых каналов. Стоит он копейки, поднимается за полчаса, а живёт настолько долго, насколько вы готовы не «светить» его в публичных списках.

Когда настроите — проверьте, что прокси отвечает у тех операторов и регионов, для которых вы его запускаете. Без такой проверки легко получить ситуацию «у меня работает, у пользователя — нет».

Проверить сейчас