Então você quer configurar seu próprio proxy para ajudar os usuários do Telegram que vivem em países autoritários (como Irã, China e outros)?
Pré-requisitos
Todas as operações deste guia foram realizadas em um servidor GNU/Linux. Caso você utilize outro sistema operacional, pode ser necessário adaptar alguns comandos.
- git
- python3
- vim-common
- coreutils
- docker (opcional)
Procedimentos
1. Clone o seguinte repositório:
git clone https://github.com/alexbers/mtprotoproxy.git; cd mtprotoproxy
2. Gere um segredo que será usado pelos usuários para se conectar ao seu proxy:
head -c 16 /dev/urandom | xxd -ps
3. Registre seu proxy no bot @MTProxybot:
A tag gerada será utilizada no arquivo de configuração, mostrado no próximo passo.
Serão gerados também os links para o seu proxy. Não esqueça de fazer a configuração do seu canal patrocinado (que será mostrado na lista de chats de quem estiver utilizando o proxy) caso queira, entrando com o comando /myproxies
e acionando o botão Edit Promotion
:
4. Edite o arquivo config.py
, informando em PORT
a porta que será utilizada para a conexão, em USERS
o segredo gerado no passo 2 e em AD_TAG
a tag gerada pelo bot no momento do registro:
5. Inicialize o proxy:
python3 mtprotoproxy.py
ou
docker-compose up -d
O servidor também mostrará o link para proxy (caso esteja utilizando o docker, acesse o link compartilhável com o comando docker-compose logs
.
O desempenho do proxy deve ser suficiente para atender confortavelmente cerca de 4.000 usuários simultâneos na instância VDS com 1 núcleo de CPU e 1.024 MB de RAM.
E é isso! Parabéns, seu proxy está configurado e funcionando! 😁
Algumas dicas de como otimizar o proxy
Instale módulos Python para criptografia. O proxy é compatível com os módulos cryptogrpaphy
, pycryptodome
e pycrypto
. Se nenhum deles for encontrado, a criptografia Python empacotada por padrão é usada (porém ela é bem lenta).
Se você tiver muita RAM, tente aumentar os buffers em config.py
:
TO_CLT_BUFSIZE = 262144
TO_TG_BUFSIZE = 262144
Isso tornará o upload e o download mais rápidos com o aumento do uso de memória. As configurações de buffers padrão são otimizadas para 512 MB de RAM.
Instale o módulo uvloop
– a implementação mais rápida do loop de eventos principal. O desempenho deve melhorar em cerca de 30%.
O proxy está usando um único núcleo de CPU. Se você tiver vários núcleos e o proxy estiver usando totalmente um deles, o proxy pode ser iniciado várias vezes – a carga será dividida igualmente entre os processos.
⚠️ A equipe do canal @DicasTelegram de forma alguma incentiva ou fomenta qualquer tipo de atitude que vá de encontro aos Termos de Uso do Serviço do Telegram, bem como o cometimento de quaisquer crimes previstos em Lei. Para saber mais sobre como denunciar conteúdos ilegais, acesse: https://t.me/DicasTelegram/1598.