MTProto, это специальный протокол разработанный командой Дурова, предназначенный для шифрования трафика мессенджера Telegram.

MTProto Proxy — это промежуточный сервер, выполняющий роль посредника между пользователем и серверами Telegram, позволяя получать доступ к Telegram, если по каким-то причинам он недоступен, скрывая свой IP адрес и маскируя трафик.

Telegram MTProto Proxy используется не только для обхода блокировок Telegram (который уже давно перестали блокировать, поняв бесполезность затеи), но и может помочь в случае проблем с доступом к Telegram у вашего провайдера, или при наличии проблем у самого Telegram в конкретной стране.

Как установить Telegram MTProto Proxy на сервер CentOS/RHEL или Debian/Ubuntu

Для личного использования подойдёт любой сервер, даже самый дешёвый VPS.

Для начала устанавливаем необходимые пакеты.

Для Debian/Ubuntu:

apt install git curl build-essential libssl-dev zlib1g-dev mc

Для CentOS/RHEL:

yum install openssl-devel zlib-devel vim-common mc
yum groupinstall "Development Tools"

Клонируем репозиторий, переходим в его папку, компилируем:

git clone https://github.com/TelegramMessenger/MTProxy
cd MTProxy
make

Если что-то пошло не так, разбираемся что именно, и затем, перед повторной сборкой, не забываем выполнить:

make clean

Наведём порядок, разложим всё по своим местам:

cp objs/bin/mtproto-proxy /usr/bin/
chmod 775 /usr/bin/mtproto-proxy
cd /etc
mkdir mtproto-proxy
cd mtproto-proxy

Получаем секретный файл, нужный для подключения к серверам Telegram:

curl -s https://core.telegram.org/getProxySecret -o proxy-secret

Получаем текущую конфигурацию Telegram:

curl -s https://core.telegram.org/getProxyConfig -o proxy-multi.conf

Она может периодически меняться, поэтому не лишним будет обновлять файл раз в сутки:

echo "curl -s  https://core.telegram.org/getProxyConfig -o /etc/mtproto-proxy/proxy-multi.conf" > /etc/cron.daily/mtproto-proxy
chmod 755 /etc/cron.daily/mtproto-proxy

Создаем секрет, который будет использоваться пользователями для подключения к нашему прокси и сохраняем его себе:

head -c 16 /dev/urandom | xxd -ps

Создаём служебный файл systemd, чтобы Telegram MTProto Proxy работал как служба. Например через редактор mcedit:

mcedit /etc/systemd/system/mtproto-proxy.service

И вставляем в него:

[Unit]
Description=MTProxy
After=network.target
[Service]
ExecStart=/usr/bin/mtproto-proxy -u nobody -p 8888 -H 443 -S <secret> --aes-pwd /etc/mtproto-proxy/proxy-secret /etc/mtproto-proxy/proxy-multi.conf -M 1
Restart=on-failure
[Install]
WantedBy=multi-user.target

Где:

  • 443 — порт, к которому вы будете подключаться к Telegram MTProto Proxy. Если занят, используйте другой.
  • 8888 — локальный порт для просмотра статистики, доступен только с самого сервера. Посмотреть статистику можно командой wget localhost:8888/stats
  • <secret> — меняете на тот, который генерировали и сохранили выше.

Перезагружаем systemd:

systemctl daemon-reload

Запускаем службу и проверяем нормально ли она запустилась:

systemctl restart mtproto-proxy
systemctl status mtproto-proxy

Если всё ок, то добавляем в автозагрузку:

systemctl enable mtproto-proxy

На Centos 8 у меня не запустился. Если просто запустить из консоли:

/usr/bin/mtproto-proxy -u nobody -p 8888 -H 443 -S <secret> --aes-pwd /etc/mtproto-proxy/proxy-secret /etc/mtproto-proxy/proxy-multi.conf -M 1

то видна проблема: mtproto-proxy: common/pid.c:42: init_common_PID: Assertion `!(p & 0xffff0000)’ failed.

Решается так:

echo "kernel.pid_max=65535" > /etc/sysctl.conf
sysctl -p

Ну и на этом всё. Чтобы подключиться к вашему Telegram MTProto Proxy, используйте ссылку, заменив в ней данные на свои:

tg://proxy?server=<IP сервера>&port=<ПОРТ>&secret=<СЕКРЕТ>

Иногда правда бывает, что провайдеры вычисляют по размеру пакетов, и блокируют MTProxy. В этом случае, к вашему секрету в начале допишите 2 буквы dd. Тогда к пакетам будут добавляться случайные данные.

Внимание! Использование прокси в некоторых странах может нарушать законодательство. Ознакомьтесь с законами страны прежде чем устанавливать и использовать Telegram MTProto Proxy.
Все операции описанные в статье производились на тестовом сервере, и после написания статьи были удалены.

Нужна профессиональная удалённая помощь с сервером, сайтом, компьютером или ноутбуком?

Свяжитесь со мной любым удобным для вас способом, и получите её быстро и не дорого.

Обсудить задачу

Помогла статья? Поблагодари автора!

Остались вопросы, или есть что добавить? Добро пожаловать в комментарии.

Угостить автора чашечкой кофе

Недавние записи

Критическая уязвимость в Elementor Pro

Критическая уязвимость в Elementor Pro — популярном плагине WordPress

В версии, 3.11.7, плагина Elementor Pro выпущенной  22 марта 2023 года, устранена...
Подробнее
Яндекс Метрика

Битрикс Веб-окружение и проблемы с Вебвизор Яндекс Метрики из-за заголовка X-Frame-Options

В Битрикс Веб-окружении по умолчанию в настройках Nginx прописан заголовок X-Frame-Options, который...
Подробнее
Массовый взлом сайтов на Битрикс 2023

Массовый взлом сайтов на Битрикс 2023

В последнее время ко мне массово обращаются клиенты с жалобой на взлом...
Подробнее
Битрикс - Резервное копирование по FTP

Битрикс: Веб-окружение — бэкапы на удалённый FTP сервер.

1С-Битрикс: Веб-окружение умеет создавать резервные копии только на тот же сервер, на...
Подробнее
find

Команда Find в Linux — как найти и удалить файлы и папки

Команда find предназначена для поиска файлов и папок в файловой системе Linux....
Подробнее
спам

Exim — мониторинг почтовой очереди для выявления исходящего спама

Очень часто случается так, что на сервере присутствуют сайты с неактуальными версиями...
Подробнее
Архиватор Linux

Как работать с архиваторами в консоли Linux (шпаргалка)

Часто при работе в консоли linux приходится создавать архивы, или наоборот распаковывать...
Подробнее
Логирование POST запросов

Логирование POST запросов к сайту

Довольно часто возникают ситуации, когда обычных логов, которые пишет вебсервер, бывает недостаточно....
Подробнее
Linux изменить текстовый редактор

Как в Linux изменить текстовый редактор по умолчанию

В Linux существует несколько текстовых редакторов. Vim, Nano, Mcedit, и другие. У...
Подробнее
выполнение всех агентов на cron

Битрикс — выполнение всех агентов на cron

В Битрикс по умолчанию агенты выполняются на хитах. То есть триггером для...
Подробнее
GA-H61M-S2PV (rev. 2.1) циклическая перезагрузка

Gigabyte GA-H61M-S2PV (rev. 2.1) циклическая перезагрузка (решено)

Принесли в ремонт компьютер с материнской платой Gigabyte GA-H61M-S2PV (rev. 2.1). Компьютер...
Подробнее
MySQL

Перенос большой базы MySQL, если не достаточно места для дампа

Сегодня при переносе сайта с огромной базой MySQL с одного виртуального сервера...
Подробнее
Telegram MTProto Proxy

Как поднять собственный Telegram MTProto Proxy

MTProto, это специальный протокол разработанный командой Дурова, предназначенный для шифрования трафика мессенджера...
Подробнее
Налог на профессиональный доход

Как стать самозанятым в Беларуси — налог на профессиональный доход

С 1 января 2023 года в Беларуси появился новый налоговый режим -...
Подробнее
фсзн

ФСЗН — узнать свой стаж в Беларуси можно через мобильное приложении

1 февраля 2023 года ФСЗН Беларуси запустил мобильное приложение, с помощью которого...
Подробнее
RustDesk

RustDesk — как получить компьютерную помощь онлайн

RustDesk - новая программа с открытым исходным кодом для удалённого управления устройствами....
Подробнее
Microlab M-800 не включается

Акустика Microlab M-800 не включается — Ремонт

Принесли в ремонт компьютерную акустику Microlab M-800 с диагнозом "не включается". У...
Подробнее
умный бесперебойник с WiFi

Делаем умный бесперебойник с WiFi и подключаем его к умному дому с Алисой

Недавно я рассказывал как можно удалённо включать и выключать свой компьютер через...
Подробнее
перенос сайта на другой сервер через SSH

Быстрый перенос сайта на другой сервер через SSH

Современные сайты и их базы данных могут быть очень большими, и перенос...
Подробнее
Включаем и выключаем компьютер удалённо

Включаем и выключаем компьютер удалённо, или через умный дом.

Иногда бывают ситуации, когда нужно включить или выключить компьютер удалённо. Например, включить...
Подробнее
блокируем вредных ботов

Nginx — блокируем вредных ботов.

В сети существует огромное количество ботов, которые занимаются сканированием сайтов. Некоторые боты...
Подробнее
cron

Cron — переход по ссылке с параметрами в URL

Cron - планировщик в Linux для запуска задач по расписанию. Обычно он...
Подробнее

Contact Form 7 — удаляем значок Google reCaptcha со страниц сайта.

Популярный плагин для создания контактных форм на сайтах под управлением Wordpress, Contact...
Подробнее
MySQL

Автоматическое завершение долгих процессов Mysql

Бывают случаи, когда некоторые запросы Mysql подвисают и выполняются невероятно долго, создавая...
Подробнее

Шпаргалка по командам EXIM

Exim — это агент пересылки сообщений для ОС Linux. В этой шпаргалке,...
Подробнее
подборка полезных программ

Windows — подборка полезных программ.

Небольшая подборка полезных программ, которые я рекомендую к использованию на компьютерах и...
Подробнее
Это приложение не позволяет выключить компьютер

Отключаем уведомление «Это приложение не позволяет выключить компьютер»

При выключении компьютера Windows или при его перезагрузке часто можно встретить, как...
Подробнее

Windows 11 как установить Internet Explorer, как зайти в личный кабинет налоговой и портал ФСЗН

В новой Windows 11 компания Microsoft полностью удалила браузер Internet Explorer, который...
Подробнее

Удалённая компьютерная помощь. Что это и как?

Большинство проблем с вашим компьютером или ноутбуком можно решить удалённо, не выезжая...
Подробнее
Введите текст для поиска...