Шпаргалка для настройки MTProto Proxy Server.
Я устанавливал этот прокси года три назад. На 03.03.2022 он находится в рабочем состоянии.
ОС я выбрал Ubuntu 16.04. Запущена как виртуальная машина на OpenVZ 7.0.7 (ploop). Для начала надо установить Docker. https://www.digitalocean.com/community/tutorials/docker-ubuntu-16-04-ru
В процессе установки не хватает некоторых модулей, но всё гуглится и устанавливается. Вот это я точно устанавливал:
apt-get install apt-transport-https apt-get install gcc apt-get install libssl-dev
А теперь сама установка сервера. Качаем и собираем контейнер.
git clone https://github.com/TelegramMessenger/MTProxy.git
cd MTProxy
make
cd objs/bin
docker run -d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data telegrammessenger/proxy:latest
После этого запустить:
docker logs mtproto-proxy
И должно появиться что-то типа:
Telegram Proxy #### [+] No secret passed. Will generate 1 random ones. [*] Final configuration: [*] Secret 1: afajkfhjksajkahkhkjkkk [*] tg:// link for secret 1 auto configuration: tg://proxy?server=127.0.0.1&port=443&secret= afajkfhjksajkahkhkjkkk [*] t.me link for secret 1: https://t.me/proxy?server=127.0.0.1&port=443&secret= afajkfhjksajkahkhkjkkk [*] Tag: no tag [*] External IP: 127.0.0.1 [*] Make sure to fix the links in case you run the proxy on a different port. [+] Starting proxy...
Строчки вида:
tg://proxy?server=127.0.0.1&port=443&secret= afajkfhjksajkahkhkjkkk [*] t.me link for secret 1: https://t.me/proxy?server=127.0.0.1&port=443&secret= afajkfhjksajkahkhkjkkk
и есть ссылки для подключения прокси.
#Подцепить свой канал
Для начала надо создать свой канал. Затем перейти к боту @MTProxybot. Бот должен вывести приветствие с возможными действиями. Надо сделать:
/newproxy
Далее ввести ip своего сервера и порт прокси вот таким образом: ip:port. После этого бот вопросит ввести ключ своего прокси: Now please specify its secret in hex format. После этого должно появится сообщение о успешной регистрации прокси, где будет указан тэг для канала:
Success! Your proxy has been successfully registered. You can now pass this proxy tag to the software you are using: "тут тэг"
Теперь можно ввести:
/myproxies
и выбрать «Edit promotion» и ввести название своего канала в том виде, в каком предлагает бот. Бот сообщит о успехе операции:
New promoted channel has been set. It may take some time (up to 1 hour) for Telegram clients to apply these settings.
Если docker уже был запущен и надо перезапустить его с тэгом, то для начала надо удалить запущенный контейнер вот так:
docker rm -f <name>
Тут <name> — это имя контейнера, с которым он был запущен, указывался вот так: —name=mtproto-proxy, например.
А потом запустить контейнер вот так
docker run -d --net=host --name=mtproto-proxy --restart=always -v proxy-config:/data -e TAG=<тут тэг без кавычек и прочей ерунды без пробелов> telegrammessenger/proxy:latest
#Установка нескольких ключей и замена ключа
Ключ генерируется так:
openssl rand -hex 16
Подключение, например, четырёх ключей:
docker run -d —net=host —name=mtproto-proxy —restart=always -v proxy-config:/data -e SECRET=key1,key2,key3,key4 telegrammessenger/proxy:latest
Официальная инструкция — https://ru.telegram-store.com/blog/mtproto-proxy-server/
Статья на хабре нагло перепечатанная с оф. инструкции без указания источника — https://habr.com/post/412755/
Ещё один источник с хабры — https://habr.com/post/412759/
Про работу с Docker — https://community.vscale.io/hc/ru/community/posts/211783625-%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D1%8B-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B-%D1%81-Docker