Статьи Тестируем и поднимаем MTProto сервер для Telegram

Discussion in 'Статьи' started by icyclopys, 9 May 2018.

  1. icyclopys

    icyclopys Member

    Joined:
    11 Jul 2012
    Messages:
    112
    Likes Received:
    80
    Reputations:
    2
    [​IMG]


    Буквально на днях в настройках альфа версий телеграм. Помимо привычных SOCKS5 и HTTP прокси, появился протокол MTProto.

    Немного корявой мат.части:
    MTProto-сервер вроде бы и обычный сервер, но с одной интересной деталью: благодаря изменениям протокола и полю secret они сделали протокол неуязвимым для DPI провайдеров. Они маскируются под TLS (считай под HTTPS-трафик).

    Очень грубо говоря изменения же в протоколе MTProto не позволят отличить трафик Телеграма от обычного HTTPS-трафика.

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

    Теперь перейдем ближе к делу:
    Пока прокси-сервер MTProto работает только в альфа-версии Telegram для Windows (1.2.18), бета-версии для macOS (3.8.3) и альфа-версии Telegram X для iOS (5.0.3).

    На данный момент команда MadelineProto представила решение для быстрого создания собственного MTProto сервера.

    Собственный MTProto сервер может развернуть любой пользователь Linux. Но заранее предупреждаю, что там PHP скрипт, а значит нам нужно поставить PHP заранее, если Ваш VPS чист.

    sudo apt install php для Ubuntu
    yum install -y php для CentOS 7

    Далее необходимо выполнить несколько простых команд:

    Загружаем файл сервера
    wget https://phar.madelineproto.xyz/mtproxyd

    Даем права
    chmod +x mtproxyd

    Запускаем сервер
    ./mtproxyd antichat 6666
    Вместо antichat можно указать любую строку. Этот параметр используется для генерации секретного ключа с помощью алгоритма md5.
    Вместо 6666 можно указать любой порт, на ваше усмотрение.

    [​IMG]
    Как видите сервер работает.



    Идем дальше. Нужно теперь это зайти в сам телеграм.
    Settings - Advanced Settings - Proxy settings

    Выбираем наш MTPROTO протокол:
    [​IMG]

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



    Ну и теперь всё работает:
    [​IMG]



    P.S Есть единственное НО!!1 Прям огромное. После того, как разлогинитесь через Putty\Terminal, скрипт перестанет работать. Пока такой кривой скрипт, но в будущем доработают.
     
    Veil and Jerri like this.
  2. Jerri

    Jerri Elder - Старейшина

    Joined:
    12 Jul 2009
    Messages:
    136
    Likes Received:
    377
    Reputations:
    22
    Единственного НО!!1 нет. Запускать через screen

    Code:
    apt-get install screen
    screen ./mtproxyd antichat 6666
    ctrl+a -> d
    
     
    Veil and icyclopys like this.
  3. icyclopys

    icyclopys Member

    Joined:
    11 Jul 2012
    Messages:
    112
    Likes Received:
    80
    Reputations:
    2
    Как протестирую, так и добавлю.
     
  4. TelegramExprert

    TelegramExprert New Member

    Joined:
    13 May 2018
    Messages:
    1
    Likes Received:
    3
    Reputations:
    0
    Можно вынести процесс в сервис:
    Создаем файл:
    Code:
    nano /lib/systemd/system/mtproxyd.service
    Пишем следующее:
    Code:
    [Unit]
    Description=MTproxy service
    After=network.target
    StartLimitIntervalSec=0
    
    
    [Service]
    Type=simple
    Restart=always
    RestartSec=1
    User=user #Здесь ваше имя пользователя
    ExecStart=/opt/mtproxy/mtproxyd #Здесь путь до файла mtproxyd
    
    [Install]
    WantedBy=multi-user.target
    Теперь доступны комманды
    включение:
    Code:
    service mtrpoxyd start
    выключение:
    Code:
    service mtrpoxyd stop
    статус:
    Code:
    service mtrpoxyd status
    рестарт:
    Code:
    service mtrpoxyd restart
    Чтобы он стартовал вместе с системой пишем
    Code:
    systemctl enable mtproxyd
     
    vinosh, icyclopys and Jerri like this.
  5. mail156

    mail156 Banned

    Joined:
    28 Sep 2018
    Messages:
    464
    Likes Received:
    357
    Reputations:
    0
    Mtproto хорошая задумка. На openvpn можно ставить трафик на 443 порт https