Установка и настройка MTProxy (MTProto proxy)

В этом руководстве мы разберем, что представляет собой протокол MTProto (MTProxy) и как самостоятельно развернуть его на арендованном VPS-сервере для безопасной работы с Telegram.

MTProto (Mobile Telegram Protocol) — это протокол, разработанный командой Telegram. Он обеспечивает безопасное и стабильное подключение к серверам мессенджера, позволяя обойти ограничения сети.

Важно: данный протокол совместим только с официальными приложениями Telegram. Для установки вам понадобится VPS (виртуальный выделенный сервер) с доступом по SSH и правами root.

Подготовка VPS к установке MTProto

После подключения к серверу через SSH первым делом обновите систему и установите необходимые зависимости для сборки прокси:

apt update && apt install git curl build-essential libssl-dev zlib1g-dev -y
Если у вас еще нет виртуального сервера, его можно арендовать у проверенных провайдеров из нашей подборки надежных VPS серверов. Перейти

Установка MTProto

Существует два основных способа установки: ручная сборка (классический метод) и установка через Docker (более простой и изолированный). Выберите подходящий для себя.

Способ 1: Ручная установка

Этот метод дает полный контроль над конфигурацией.

  1. Клонируйте репозиторий с исходным кодом прокси:
    git clone https://github.com/TelegramMessenger/MTProxy
  2. Перейдите в директорию и запустите сборку:
    cd MTProxy
    make && cd objs/bin
  3. Получите служебные файлы и сгенерируйте секретный ключ:
    • proxy-secret — секрет для авторизации на серверах Telegram.
    • proxy-multi.conf — конфигурация для работы с несколькими портами.
    • Секретный ключ — уникальная строка, которую пользователи будут использовать для подключения.
    curl -s https://core.telegram.org/getProxySecret -o proxy-secret
    curl -s https://core.telegram.org/getProxyConfig -o proxy-multi.conf
    head -c 16 /dev/urandom | xxd -ps

    Скопируйте сгенерированный секретный ключ (набор цифр и букв), он понадобится далее.

  4. Запустите прокси вручную (тестовый запуск):
    ./mtproto-proxy -u nobody -p 8888 -H 443 -S <ваш_секретный_ключ> --aes-pwd proxy-secret proxy-multi.conf -M 1

    Обратите внимание: если вы закроете терминал или нажмете Ctrl+C, прокси остановится. Чтобы этого избежать, настроим автозапуск.

  5. Создайте системную службу (systemd) для автоматического запуска:
    nano /etc/systemd/system/mtproto-proxy.service

    Вставьте в файл следующий код, заменив <секретный ключ> на скопированное ранее значение:

    [Unit]
    Description=MTProto Server
    After=network.target
    Wants=network.target
    [Service]
    Type=simple
    User=root
    Group=root
    WorkingDirectory=/root/MTProxy/objs/bin
    ExecStart=/root/MTProxy/objs/bin/mtproto-proxy -u nobody -p 8888 -H 443 -S <секретный ключ> --aes-pwd proxy-secret proxy-multi.conf -M 1
    Restart=on-failure
    RestartSec=10
    StandardOutput=journal
    StandardError=journal
    LimitNOFILE=65536
    KillMode=process
    KillSignal=SIGTERM
    [Install]
    WantedBy=multi-user.target

    Сохраните файл (Ctrl+OEnter) и выйдите (Ctrl+X).

  6. Активируйте и запустите службу:
    systemctl daemon-reload
    systemctl enable mtproto-proxy.service
    systemctl start mtproto-proxy.service

Способ 2: Установка через Docker

Этот способ быстрее и требует меньше настроек, так как все зависимости изолированы в контейнере.

  1. Установите Docker, если он еще не установлен:
    curl -fsSL https://get.docker.com | sh
  2. Запустите контейнер с MTProxy:
    docker run -d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data telegrammessenger/proxy:latest
  3. Получите данные для подключения:
    Чтобы узнать секретный ключ и сгенерировать ссылку, выполните:

    docker logs mtproto-proxy

    В выводе вы увидите готовую ссылку формата tg://proxy?server=... и сам секретный ключ.

Если у вас еще нет виртуального сервера, его можно арендовать у проверенных провайдеров из нашей подборки надежных VPS серверов. Перейти

Подключение к прокси в Telegram

После того как прокси запущен, необходимо добавить его в приложение Telegram.

Автоматический способ (через ссылку)

Сформируйте ссылку для подключения, используя IP вашего сервера, порт (по умолчанию 443) и секретный ключ:

tg://proxy?server=<IP_сервера>&port=443&secret=<секретный_ключ>

Отправьте эту ссылку в Telegram в диалог «Избранное» и нажмите на нее. В появившемся окне нажмите «Включить».

Ручной способ

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

  • Мобильные устройства (iOS/Android):
    Настройки → Данные и память → Настройки прокси → Добавить прокси → Выбрать тип MTProto.
    Введите IP сервера, порт и секретный ключ.
  • Десктоп (Windows/macOS/Linux):
    Настройки → Продвинутые настройки → Тип соединения → Использовать собственный прокси → Добавить прокси → Выбрать тип MTProto.
    Заполните поля аналогично мобильной версии.

Решение проблем: смена порта

Стандартный порт для прокси — 443. Если этот порт уже занят другим приложением (например, Nginx или веб-сервером), вы можете изменить его.

Для ручной установки (способ 1)

Отредактируйте файл службы:

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

В строке ExecStart найдите параметр -H 443 и замените 443 на желаемый порт (например, 8443). После изменений перезапустите службу:

systemctl daemon-reload
systemctl restart mtproto-proxy.service

Для установки в Docker (способ 2)

Сначала сгенерируйте новый секретный ключ:

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

Затем остановите и удалите старый контейнер, запустив новый с нужным портом (например, 1234):

docker stop mtproto-proxy && docker rm mtproto-proxy
docker run -d \
 --name mtproto \
 --restart unless-stopped \
 -p 1234:443 \
 -e SECRET=<сгенерированный_ключ> \
 telegrammessenger/proxy

Вывод

Теперь вы знаете, как быстро развернуть собственный MTProto-прокси на VPS. Вы можете выбрать ручную настройку для полного контроля или использовать Docker для более простого и автоматизированного развертывания. В обоих случаях вы получите стабильный и безопасный канал для использования Telegram.

Если у вас еще нет виртуального сервера, его можно арендовать у проверенных провайдеров из нашей подборки надежных VPS серверов. Перейти