Телеграм продолжает искать способы обхода блокировок. Недавно в десктопной версии (и бета-версии для Android) заметили новый тип прокси, который должен «превратить» трафик мессенджера в обычный веб-трафик. «Бумага» разобралась, как устроена эта разработка — и поможет ли она пользователям.
Чем прокси отличаются от VPN? И как они обходят блокировки?
Простыми словами, прокси — это посредник между вами и сайтом, на который вы хотите зайти. Сначала ваш запрос отправляется на прокси-сервер, а уже оттуда — к нужному сайту. Благодаря этому при использовании прокси обходятся региональные блокировки конкретных сайтов.
Может показаться, что прокси работает точно так же, как VPN. И технологии действительно похожи, но на деле чаще всего есть важное отличие: качественные VPN почти всегда создают зашифрованное соединение между вашим устройством и VPN-сервером. Соответственно интернет-провайдер не видит, куда именно вы заходите. У прокси такого шифрования может не быть, а данные могут передаваться без дополнительной защиты.
Телеграм же уже использовал прокси?
Да, конечно, в 2018 году, когда Роскомнадзор впервые заблокировал мессенджер.
С того момента в настройках приложения можно было подключить несколько типов прокси. Чаще всего пользователи выбирали между универсальным SOCKS5 и MTProto Proxy, разработанным самим Telegram.
С маскировкой соединения лучше справлялся MTProto Proxy, который использовал технологию fake TLS. Она позволяла сделать прокси-соединение похожим на обычное HTTPS-соединение. Данные при таком соединении шифруются, и его было сложнее отличить от остального трафика. Однако в мае этого года проблемы начались и с MTProto Proxy: Роскомнадзор научился выявлять характерные признаки таких соединений. То, что прокси часто попадают под блокировки, подтверждают и в Paper VPN: «Все текущие прокси для обхода блокировки Telegram довольно быстро перестают работать. Вероятно, цензоры определили паттерн, который быстро воспроизводит блокировку. Проще и надежнее полагаться на обычный VPN, чем на прокси».
Что теперь предлагает телеграм?
Новый способ подключения — WEB Proxy. Задача этой системы (пока она тестируется) — сделать соединение менее заметным и затруднить его блокировку.
При этом MTProxy никуда не исчезает. WEB Proxy не заменяет его, а фактически служит дополнительным слоем между мессенджером и MTProxy. Телеграм по-прежнему использует MTProxy, но передает уже сформированный зашифрованный поток через встроенный WebView — по сути, это небольшой браузер внутри приложения. А уже WebView устанавливает соединение с WEB Proxy по HTTPS или WebSocket — тем же веб-протоколам, которые используются для обмена данными между браузером и сайтами. Благодаря этому такое соединение выглядит как обычный веб-трафик (а по сути и является им).
Затем данные попадают на сервер WEB Proxy. Там их принимает специальная программа — tproxy-server. Она разделяет общий поток на отдельные соединения и передает их MTProxy, который дальше отправляет трафик на серверы телеграм. Сам tproxy-сервер при этом не расшифровывает MTProxy-трафик — для него это просто единый поток, который нужно переслать по цепочке.
Есть еще одна особенность. Сервер WEB Proxy может одновременно использоваться и как обычный сайт. Например, один и тот же домен позволяет открыть веб-страницу в браузере или подключиться к WEB Proxy из телеграма. В этом случае сервер понимает, какой запрос перед ним: обычный посетитель сайта или пользователь мессенджера.
Именно поэтому WEB Proxy должен помочь с блокировками: если прямое подключение к MTProxy недоступно, телеграм сначала уходит к WEB Proxy, а уже тот передает трафик дальше. РКН же нужно определить, скрывается ли за обычным веб-сайтом WEB Proxy. Если это удастся вычислить (это возможно), то IP или домен по-прежнему можно заблокировать. Но такое ограничение затронет и обычный сайт, работающий на том же домене, поэтому точечная блокировка WEB Proxy в теории сложнее.
Таким образом, WEB Proxy не делает телеграм полностью защищенным, но усложняет блокировку, отмечают в Paper VPN. «Мы планируем протестировать это решение: оно отличается механизмом передачи данных, предположительно лучше защищено от детекта и блокировки, так как может затеряться в веб-трафике. Пользователям нужно подождать, пока это решение станет доступным в приложении и переключиться в этот режим. В целом, это типовая борьба щита и меча, но приятно, что ребята из Telegram все-таки пробуют продолжать».
Если всё заработает, как настроить прокси?
WEB Proxy уже появился в приложении Telegram Desktop для компьютеров на Windows, macOS и Linux. В версии 7.1, вышедшей 21 августа, Telegram добавил WEB Proxy прямо в настройки подключения.
Позднее WEB Proxy появился в бета-версии приложения для Android, предназначенной для тестирования новых функций. Есть экспериментальная реализация WEB Proxy и для iOS (она пока недоступна для пользователей). То есть разработчики уже тестируют, как встроить WEB Proxy в мобильные приложения, но работа еще не закончена.
Если технология успешно пройдет проверку (некоторые пользователи, попробовавшие ее в десктоп-версии, указывают, что пока она работает не без проблем), то схема установки WEB Proxy, скорее всего, будет такой же, как и в случае с MTProxy. То есть потребуется работающий прокси-сервер. Его можно будет либо купить, либо создать самостоятельно, либо использовать бесплатный вариант от какого-нибудь сервиса (но тут нужно быть осторожным).
После того, как вы нашли сервер, остается всего несколько кликов. Нужно зайти в настройки телеграма, выбрать настройки данных и памяти (или «продвинутые настройки» для десктопа), а затем включить прокси.
Есть и более простой способ: установить прокси по ссылке, которая часто предоставляется после выбора сервера. Для MTProxy телеграм поддерживает ссылки вида t.me/proxy?server=…&port=…&secret=… и tg://proxy?server=…&port=…&secret=….
Для WEB Proxy Telegram уже предусмотрел похожую схему. В тестировании используются ссылки вида https://t.me/webproxy?server=…&secret=… и tg://webproxy?server=…&secret=…. Однако пока есть ограничение: только десктопная версия умеет их распознавать и использовать указанные параметры. В других версиях такая ссылка просто открывает диалог со служебным ботом, без передачи настроек прокси.
Что еще почитать:
- В России внедряют цифровой рубль. Зачем он нужен и как будет работать?