Загрузка...

How to raise your MTProxy for telegrams.

Thread in Security created by miffle1337 May 3, 2022. (bumped Jan 6, 2024) 4552 views

The poll

Было ли полезно?

  1. Да

    14
    93.3%
  2. Нет

    1
    6.7%
  1. miffle1337
    miffle1337 Topic starter May 3, 2022 94 Jan 5, 2021
    Так-с, всем привет! Сейчас я попробую рассказать и показать способ создания своего MTProxy.
    MTProto Proxy или MTProxyэто сетевой протокол семейства MTProto нового поколения, разработанный командой Telegram. Трафик шифруется по криптографическому протоколу MTProto, на основе которого шифруются все данные в инфраструктуре Telegram
    1) Виртуальная машина. Я пользуюсь Google Cloud Platform. Т.к. создавал там аккаунт ещё давно, у меня не было проблем с добавлением карты(Сейчас вроде есть, хз). Если на этом моменте возникают проблемы, то можно купить готовые аккаунты на форуме. Гугл дают бесплатные 300$, так что того должно хватить на длительный период.
    2) Минимальные знания в работе с линуксом, т.к. собираюсь рассказать достаточно подробно.
    Для начала нам нужно создать саму виртуальную машину.
    Т.к. делал я ****** для себя, мне хватит и минимальной мощности.
    [IMG]
    В поле "Name" пиши любое название, которое тебе нравится
    Регион я ставлю Нидерланды, т.к. они меня ещё не подводили(Что нельзя сказать о Токио)
    f1 micro достаточно для меня одного(я уже говорил), так что не вижу причины использовать более мощные машины.
    [IMG]
    Тут мы выбираем ОС, т.к. я половину моей "программистской" жизни пользуюсь Debian'ом, то и статью напишу про работу с ним.
    Размер диска ставлю на 10 ГБ, стандарт у меня такой. Стоят эти 10 ГБ всего 1$, но позволяют поставить на машину ещё что-нибудь.
    Две нижние галочки я поставил прикола ради, т.к. пока разбирался с проблемами перепробовал много чего. Лучше поставить, хуже они не делают.
    С созданием, вроде, всё, можно переходить к работе в самом линуксе.
    Подключившись к линуксу через SSH(там есть кнопка)
    [IMG]
    Нас встречает такое чудо:
    [IMG]
    Первое, что мы делаем - это устанавливаем нужные пакеты:
    sudo apt install git curl build-essential libssl-dev zlib1g-dev

    Потом нужно скопировать сам репозиторий:
    sudo git clone https://github.com/krepver/MTProxy.git -b gcc10
    Так-с, думаю стоит объяснить, почему именно "-b gcc10". В начале пути я пытался с master веткой, но в последствии выдавало ошибку при выполнении команды "make"(О ней дальше). Ошибка была вызвана тем, что компилятор не подходил. Именно для этого и сделали вторую ветку, с которой всё заработало. Это достаточно важный момент, т.к. без него работать вряд ли будет!
    Теперь переходим в нужный каталог:
    cd MTProxy

    Перейдя в каталог нужно выполнить команду
    sudo make && cd objs/bin

    Если после выполнения команды в последних строчка нет ничего напоминающего "Error" и выполнен переход в каталог "objs/bin", то всё прекрасно.
    Однако, если что-то пошло не так, то перед новой компиляцией нужно выполнить команду:
    sudo make clean

    Следующие две команды, которые нужно выполнить:
    sudo curl -s https://core.telegram.org/getProxySecret -o proxy-secret

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

    Дальше нам понадобится сгенерировать ключ, который будет использоваться для подключения к ******:
    sudo head -c 16 /dev/urandom | xxd -ps

    После выполнения этой команды появится набор букв и цифр, который надо куда-нибудь сохранить и не потерять!
    Если не ошибаюсь, то следующая команда нужна для теста работы ******. Если запустилось и начался так называемый "loop", то всё хорошо!
    sudo ./mtproto-proxy -u nobody -p 8888 -H 443 -S <secret> --aes-pwd proxy-secret proxy-multi.conf -M 1

    • 8888 - Это локальный порт(Можно поменять, но я не проверял)
    • 443 - Это порт, который будет использоваться для подключения(т.е внешний)(Можно поменять, но я не проверял)
    • <secret> - Это тот самый ключ, который мы генерировали(Который не потерять и сохранить)
    • proxy-secret proxy-multi.conf - это то, что мы копировали теми двумя командами(Менять не надо)
    • -M 1 - Это количество "Работников", для теста и 1 хватит, но можно поменять количество.
    Дальше нам понадобятся Локальный и Внешний ip адрес машины.
    [IMG]
    Локальный - Internal
    Внешний - External
    1)Ключ
    2)Порт
    3)Ip
    То, что мы получили сверху
    Перед следующим пунктом надо "зарегистрировать" свой ******. Для этого пишем Боту @MTProxybot
    Думаю, что с этим разобраться не сложно.
    После начала бот напишет так:​

    Нужно будет отправить external ip:внешний порт(В моём случае 443)
    Дальше бот напишет:

    Нужно отправить тот самый сгенерированный ключ.
    Если всё сделано правильно, то первое слово его следующего сообщения будет "Success".
    И будет содержать tag, две ссылки
    На этом работа с ботом заканчивается.
    Теперь нам нужно, чтобы ****** работал постоянно. Для этого нам нужно выполнить ряд команд и поработать головой)
    Первой командой будет:
    sudo nano /etc/systemd/system/MTProxy.service

    Она создаёт нужный нам файл, в который нужно будет вписать следующий текст, заменив некоторые его части:
    Code
    [Unit]
    Description=MTProxy
    After=network.target

    [Service]
    Type=simple
    WorkingDirectory=/home/<your username>/MTProxy/objs/bin
    ExecStart=/home/<your username>/MTProxy/objs/bin/mtproto-proxy -u nobody -p 8888 -H 443 --nat-info <Internal_IP>:<External_IP> -S <secret key> -P <Tag> --aes-pwd proxy-secret proxy-multi.conf -M 1
    Restart=on-failure

    [Install]
    WantedBy=multi-user.target
    1)<your username> - То, что пишется вот тут:
    [IMG]
    2)<Internal_IP>:<External_IP> надеюсь понятно(ip виртуальной машины)
    3)<secret key> - Сгенерированный ключ
    4)<Tag> - Тот тэг, который отправил бот при регистрации
    5)Про -M 1 я уже говорил выше
    Осталось сохранить файл. Это делается так:
    1) ctrl+x
    2)Y
    3)Enter
    И вот мы на финишной прямой осталось выполнить несколько команд
    sudo systemctl daemon-reload

    sudo systemctl enable MTProxy.service

    sudo systemctl restart MTProxy.service

    sudo systemctl status MTProxy.service

    Если после выполнения последней команды получается такое, то мои поздравления:
    [IMG]
    Приятный бонус заключается в том, что можно добавить свой канал в promotion.
    Критерии для добавления:
    1) Открытый канал
    2) Канал без ограничений(Никакой порнографии и т.д.)
    Чтобы добавить канал нужно после регистрации ****** у бота нажать на эту кнопку:
    [IMG]

    После этого отправляем ссылку на канал и ждём около часа.
    Примерно так и будет выглядеть реклама у пользователей
    [IMG]

     
  2. noer_inactive3207491
    noer_inactive3207491 Jun 26, 2022 Banned 11 Apr 23, 2020
    Хорошая статья ,неплохо обьяснил
     
Loading...
Top