Telegram Proxy (MTProxy | Telemt): как создать прокси для Телеграм

Дисклеймер: Материал носит исключительно информационный характер. Автор не призывает к каким-либо действиям.
Статья-гайд, посвящённая установке и настройке своего Telegram-proxy на сервере.
Если вам не хочется возиться с настройкой, а нужно подключение в пару кликов, переходите к разделу Бесплатный прокси.
Привет, читатели! В связи со скачком популярности темы, я тоже решил хайпануть и вновь проверить свой навык жать по клавишам в правильном порядке. Сразу оговорюсь, что тут не будет рассказываться, как купить сервер и как его настроить должным образом. Об этом можете почитать в другой части интернета, либо взглянуть на мои предыдущие статьи: аренда сервера, настройка сервера. Тем не менее, как и в предыдущих гайдах, я постараюсь максимально пошагово и покомандно показать, что и как делать.
Растянем хронометраж базовыми понятиями и пояснениями, чтобы все понимали, о чём речь.
Telegram-прокси
Саму суть проксирования, думаю, уже все знают. Вместо прямого соединения между вашим ПК и серверами Telegram, мы вклиниваем сервер, который будет стоять посередине.
Telegram предоставляет возможность работать через два вида прокси — SOCKS и MTProxy. Первый рассматривать не будем, поскольку он никак не защищён от DPI (устройства/программы для анализа трафика, с помощью которых РКН и замедляет Telegram), поэтому сразу перейдём ко второму.
MTProxy
MTProxy — это программа, которая перенаправляет только MTProto-пакеты. Помимо того что он скрывает конечный IP-адрес от провайдера, он умеет обфусцировать трафик, запутывая DPI.
Но вот беда: MTProxy давно не обновлялся, и на данный момент имеет характерные паттерны, из-за которых он при желании будет легко детектироваться DPI, а значит нужен немного другой подход.
Telemt
Telemt — это усовершенствованная реализация MTProxy, позволяющая маскироваться под другие сайты. При попытке достучаться до сервера, не имея секретного ключа для подключения, Telemt будет пересылать на сайт, который вы указали в конфиге.
FAQ
-
В ходе прочтения у вас мог возникнуть вопрос: “А если я буду использовать чужой MTProxy, владелец увидит мои сообщения?”.
Ответ: однозначно нет. Как раз благодаря MTProto ваш Telegram аккаунт не смогут идентифицировать, и тем более не смогут расшифровать трафик, поскольку ключи шифрования находятся только на клиентах (приложения Telegram) и на официальных серверах Telegram.
Всё, что увидит MTProxy, это:
- Ваш IP;
- Время подключения.
-
Можно ли совершать звонки? Ответ: обычно нет. Звонить не получится по той же причине: проксируется только MTProto, а звонки в Telegram не работают на этом протоколе.
Telega
Небольшое отступление от общей темы. Вероятно, многие уже слышали о таком клиенте/клоне Telegram, как Telega. В прошлом году на Habr вышла статья с разбором декомпилированного и деобфусцированного кода, в котором выявились детали, после которых вы, возможно, передумаете использовать этот мессенджер. Статья уже удалена, но сохранилась в архивах: https://web.archive.org/web/20251106064704/https://habr.com/ru/articles/959534/.
Установка Telemt
UPD 05.03.2026
Итак, ознакомились, пора за дело. Для простоты объяснения и команд будем выполнять все действия от root.
Как обычно, будем использовать Docker. Пока в репозитории проекта нет инструкции по запуску в контейнере, но есть сторонний репозиторий с инструкцией, также постоянно обновляющийся: https://github.com/An0nX/telemt-docker.
Выполняем следующие команды:
|
|
Создадим docker-compose: nano docker-compose.yml:
|
|
Пара советов, которые могут вам помочь в текстовом редакторе nano:
- Передвигать курсор мышкой не получится, впрочем как и во всём терминале, так что используйте для этого стрелки на клавиатуре.
- Нажмите
Ctrl + O -> Enter, чтобы сохранить файл; НажмитеCtrl + X, чтобы выйти из редактора.
Сгенерируем секретный ключ: openssl rand -hex 16 — вывод копируем и сохраняем.
Создадим конфиг прокси-сервера: nano telemt.toml:
|
|
В этом конфиге нужно будет заменить 3 вещи:
-
<SERVER_IP>на IP сервера; -
<SECRET>на секретный ключ, сгенерированный предыдущей командой; -
<DOMAIN>на любой HTTPS‑домен. Домен для TLS‑маскировки должен быть популярным и правдоподобным для региона, где расположен сервер. Важно, чтобы выбранный домен не выглядел аномально относительно IP‑адреса VPS.Например, если сервер расположен в РФ, логично использовать домен, характерный для российского сегмента интернета. Если сервер находится в Европе — подойдёт популярный международный домен.
ИнфоЕщё надёжнее использовать собственный домен, размещённый на том же сервере, чтобы TLS‑профиль выглядел максимально естественно, но об этом чуть позже.
Готово! Запускаем контейнер: docker compose up -d && docker compose logs -ft. В логах ищем первую ссылку tg://… и копируем её.
Ctrl + C.
Вставим скопированную ссылку в адресную строку браузера -> он предложит нам открыть Telegram, соглашаемся -> в приложении появится всплывающее окно, жмём “Включить”.

В десктопной версии Telegram внизу в колонке с чатами появится значок щита, означающий, что прокси успешно подключен.

Чтобы отключиться:
- В десктопной версии нажмите на значок щита -> выберите пункт “Использовать системные прокси настройки”;
- На Android в разделе с чатами нажмите три точки
⋮-> “Прокси” -> Выключите “Использовать прокси”; - На Iphone в разделе с чатами нажмите на значок щита -> Выключите “Использовать прокси”.
Telemt Advanced
NEW 05.03.2026
Как мы уже поняли, Telemt маскирует себя под сайт, указанный в censorship.tls_domain. И тут возникает проблема: если на устройстве одновременно работает tunnel с VLESS + Reality и в Telegram включен прокси Telemt с дефолтными настройками, то второй просто не будет функционировать, и Telegram застрянет в бесконечных попытках реконнекта.
Причину такого поведения автор Telemt описал в своих доках. Мы же сконцентрируемся на решении этой проблемы, рассмотрев как простой и не очень хороший способ, так и более сложный и менее опасный.
Self-steal
Чтобы всё заработало даже с Reality, достаточно сделать несколько шагов:
- Получить домен и указать A-запись. Как получить бесплатный поддомен, писал тут.
- В
censorship.tls_domainвместо текущего домена прописать свой собственный. - Если хочется видеть домен вместо IP в ссылке, поменять строку в
server.listeners.announceна домен вместо нынешнего IP.

Вот и всё. Для перезапуска используем: docker compose down && docker compose up -d && docker compose logs -ft и копируем ссылку из логов. Теперь подключение будет идти даже в случае, если на устройстве включен VPN с Reality.
Чем плох этот вариант? Наш домен не отдаёт сертификат, и в случае, если DPI захочет проверить факт существования сайта, прокси быстро урежут. Чтобы этого не произошло, логично, что нужно поднять сайт на нашем домене.
Улучшенный self-steal
Тут мне пришлось немного заморочиться, чтобы это всё работало, да ещё и в докере.
Во-первых, нужно остановить текущий контейнер: docker compose down.
Далее, изменим telemt.toml следующим образом rm -telemt.toml && nano telemt.toml. Также вставляем нужные значения вместо <DOMAIN> (2 раза) и <SECRET>:
|
|
Удаляем текущий .yml и создаём новый: rm docker-compose.yml && nano docker-compose.yml:
|
|
Создаём конфиг для nginx. В нём в двух местах меняем <DOMAIN> на наш домен/поддомен nano nginx.conf:
|
|
Если хочется реальный статический сайт, а не тупую заглушку “Unauthorized”, что будет правильнее с точки зрения маскировки, добавьте перед location две строки:
|
|
и замените содержимое location с return 401 "Unauthorized"; на try_files $uri $uri/ =404;.
Также добавьте в docker-compose.yml ещё один том для nginx:
|
|

И, разумеется, по пути /var/www/website/ должен лежать index.html с вашим сайтом.
Вот небольшой пример с тем же Unauthorized :)
|
|
Осталось получить сертификат. Обратите внимание, что в некоторых командах нужно заменить {DOMAIN} на домен:
|
|
Если на этапе получения сертификата возникла ошибка, то скорее всего проблемой является один из следующих пунктов:
- Включен firewall, но 80 порт закрыт. Откройте его командой
ufw allow 80/tcp. - Домен ещё не успел привязаться к IP. Попробуйте повторить попытку через 5 мин.
Возвращаемся к папке проекта и запускаем контейнеры вновь: cd /root/telemt && docker compose up -d && docker compose logs -ft.
Во-первых, теперь маскировка работает лучше, во-вторых, ссылка по-дефолту генерируется с доменом. Профит!
Реклама канала и статистика использования
NEW 05.03.2026
MTProxy имеет встроенную поддержку статистики использования, а также показа канала-спонсора вверху чатов в Telegram. Выглядит это вот так:

Сделать это очень просто. Открываем официального бота, стартуем и отправляем команду /newproxy. Для добавления прокси нужно прислать боту адрес этого самого прокси в формате host:port.
Теперь определимся с тем, что имеем. Если у нас нет домена, то в качестве host указываем IP сервера. Порт в любом случае ставим 443, если вы самостоятельно не меняли его в Telemt или nginx.
Далее, отправляем боту секрет, который генерировали в самом начале. Если потеряли, он находится в том же telemt.toml файле.
После этого бот пришлёт нам так называемый тэг.

Копируем его и возвращаемся к терминалу. Переходим к конфигу, а именно к блоку general — cd /root/telemt && nano telemt.toml:
- Раскомментируем строку
ad_tag, удалив значок хэша и вставим вместо нулей наш тэг. - Меняем значение
use_middle_proxyнаtrue.

Сохраняем файл и перезапускаем контейнеры: sudo docker compose down && sudo docker compose up -d && sudo docker compose logs -ft.
В последних версиях Telemt запуск с use_middle_proxy происходит значительно дольше, чем без него. Дожидаемся появления ссылки (~1 минута).
Готово! Статистику можно смотреть в боте, отправив команду /myproxies -> выбрав нужный прокси -> нажав кнопку Stats:

Установить продвигаемый канал ещё проще. В боте: /myproxies -> выбираем нужный прокси -> жмём Set promotion -> отправляем ссылку на канал в виде @channel или t.me/channel. Готово! Изменения применятся в течение часа.

Установка MTProxy
Зачем он вообще нужен, если есть Telemt? Если ваш местный DPI не силён, то такой прокси даст меньше неожиданных ошибок, хоть Telemt активно развивается прямо сейчас и является гораздо лучшей альтернативой в плане обмана DPI, обычный MTProxy чаще оказывается стабильнее в плане аптайма и беспрерывного коннекта (но это не точно).
Поднять этот прокси ещё проще, чем предыдущий. Достаточно лишь одного docker-compose:
|
|
Вставляем:
|
|
Также заменяем <SECRET> на своё значение. Для перезапуска контейнера используем команду: cd /root/mtproxy && docker compose down && docker compose up -d && docker compose logs -ft — как и в прошлом варианте, копируем ссылку и подключаемся.
Бесплатный прокси
Если вы так и не разобрались, или вам лень делать это всё самому, у нашего проекта NoVPN есть небольшое количество собственных прокси-серверов специально для вас! Это абсолютно бесплатно!
Просто запустите бота, и нажмите на кнопку “NoVPN Proxy” — на сайте будет вся необходимая информация.

The end
Вот гайд и подошёл к концу! Опять же, немного позже добавлю сюда информацию о Telemt за ревёрс-прокси. Если у вас возникнут трудности/вопросы/предложения, добро пожаловать в комментарии под постом!
Спасибо, что читаете! 🌱
cloudtips