Наверное, каждый пользователь Telegram уже знает, что такое прокси. Но недавно появился новый тип proxy: MTProto (МТПрокси) для Телеграмма. Что это, зачем он нужен и как работает — сейчас разберемся.
Что такое MTProto прокси (MTProxy) и как он работает?
Для обхода блокировки Телеграма многие клиенты используют подключение через прокси-сервер. Такая возможность существует в настройках приложения уже с июля 2017 года. Напомним, прокси-сервер имитирует подключение таким образом, как будто ваше устройство находится в другой стране. В первой реализации этого функционала можно было подключить только SOCKS5-прокси. В результате блокировок SOCKS5-серверов, и как следствие, постоянных перебоев в работе мессенджера, команда Павла Дурова разработала собственное решение.
MTProto Proxy — это сетевой протокол нового поколения, сокращенное название — MTProxy (МТПрокси). Трафик шифруется по криптографическому протоколу MTProto (Telegram Messaging Protocol) — также собственной разработке команды Дурова, на основе которого шифруются все данные в инфраструктуре Телеграм.
Попробовать, как работает MTProto Proxy можно в боте @BestMTProxyBot.
Окно настроек при включении @BestMTProxyBot
Важные особенности нового proxy:
Для подключения не требуется связка логин+пароль, достаточно только секретного ключа (Secret). При этом ключ надежно шифруется, поэтому определить, что вы используете прокси, будет практически невозможно.
Для DPI-фильтров (Deep Packet Inspection — технология проверки сетевых пакетов по содержимому) трафик мессенджера через MTProto-proxy не отличается от обычного интернет-трафика по https-протоколу. Это затрудняет распознавание прокси с целью блокировок.
Через новый прокси будут работать только приложения Telegram (Windows/MacOS/Linux, Android/iOS). Это вызвано спецификой proxy, который создан специально для мессенджера и не поддерживает другие сервисы.
Пока вы подключены к МТПрокси, звонки в Телеграме не будут работать, потому что голосовой контент пересылается через специальные сервера, не совместимые с протоколом MTProto. Хотя при использовании SOCKS5 аудио-связь тоже почти всегда нестабильная. Для аудиосвязи на текущий момент лучшим решением будет использование VPN.
Для владельцев МТПрокси предусмотрена возможность указать спонсорский канал. Для клиента это будет выглядеть, как закрепленный вверху всех чатов канал с пометкой “Promoted channel”. Он отображается на этом месте до тех пор, пока вы подключены к серверу, либо — пока не подпишетесь на паблик. Это решение нужно для того, чтобы создатели собственных MTProxy могли поддерживать их работоспособность, зарабатывая на рекламе в Telegram канале.
Добавить в заметки чтобы посмотреть позже?
Так выглядит канал-спонсор
Принцип работы:
MTProxy передает данные исключительно с обфускацией. Обфускация — спциальный прием в программировании для запутывания кода, приводящий исходный код к виду, сохраняющему функционал, но затрудняющему его анализ.
Используется модифицированный метод obfuscated2. Перед зашифрованной частью пакета передается открытый ключ дешифровки, но сам пакет зашифрован не им, а комбинацией ключа и “секрета”. Как раз Secret подставляется в настройки Телеграмма при подключении к MTProto-proxy, наряду с адресом и номером порта.
Secret не засвечивается в ходе обмена сообщениями. Он фигурирует при обмене между клиентским приложением и прокси-сервером для шифровки-дешифровки с помощью комбинации key+secret. На Telegram-сервера “секрет” не передается.
Благодаря этому, постороннее лицо никаким образом не может “распутать” и распознать трафик клиент-MTProxy.
В чем разница между SOCKS5 и MTProto proxy в Telegram?
SOCKS5-proxy
Как работает проксирование по SOCKS5-протоколу: клиент подключается к прокси-серверу, после чего сессия с Telegram-сервером устанавливается уже через него. Так как SOCKS5-сервер расположен за пределами страны, в которой есть блокировка, соединение с Telegram устанавливается успешно. Данный метод будет давать результаты, пока власти не отследят и не заблокируют конкретный прокси-сервер.
Настроить SOCKS5-подключение очень просто благодаря автоматическому применению параметров в Телеграме по ссылке специального вида: {адрес_сервера}&port={номер_порта}.
Популярный протокол, который реализован для всех платформ и операционных систем. Даже Веб-версия Телеграмма будет работоспособной, если указать такой прокси в настройках браузера.
Использование протокола в Телеграмме без проблем вычисляется с помощью анализаторов пакетов, SOCKS5-сервер могут заблокировать, поэтому такое соединение нестабильно.
Пара логин-пароль передается в ходе авторизации в незашифрованном виде, к ним могут получить доступ посторонние лица.
MTPROTO-proxy
МТПрокси является реверсивным, то есть перенаправляет запросы на сервера Телеграмма, при этом для клиентского приложения взаимодействие построено так, будто запрашиваемые данные находятся непосредственно на MTProxy-сервере.
В чем же разница между MTProxy и SOCKS5? В том, что программа-клиент не обращается к прокси, чтобы получить ответ от сервера Telegram и вернуть результат. Приложение взаимодействует с MTProto-прокси так, как-будто это и есть сервер Telegram.
Принцип работы MTProto-прокси
Преимущества MTPROTO-proxy для Телеграмма:
Для анализаторов трафика данные, проходящие через МТПрокси, распознаются как случайный набор кода, и обратная обфускация не может быть проведена — у провайдеров просто нет таких вычислительных мощностей. Так обеспечивается стабильное подключение. Подключитесь к бесплатному MTProxy-серверу в боте @BestMTProxyBot, и сравните сами.
Можно подключать одновременно неограниченное число MTProxy к своему клиенту.
Недостатки MTPROTO-proxy для Телеграмма:
Каждый пакет на MTProxy сервере при получении подвергается дешифровке и зашифровывается снова при отправке пользователю. Что, естественно, сказывается на скорости, не в лучшую сторону.
Невозможность проксировать голосовые звонки в Телеграм. В этом пункте, по большому счету, нет разницы с SOCKS5.
Выводы
Новый протокол МТПрокси эффективнее использовавшегося ранее SOCKS5 с точки зрения стабильности, но немного уступает в скорости. Подключайте на своих устройствах бота @BestMTProxyBot, чтобы ощутить разницу в качестве связи, и делитесь этой информацией с родными и друзьями, чтобы пользоваться Телеграмом без затруднений.