Deploy Är MTProxy Telegram mat Statistiken

Deploy Är MTProxy Telegram mat Statistiken

"Ech hunn dëse Chaos geierft,
ugefaange mat der schuedloser Zello; LinkedIn
an ophalen mat "all anerer" op der Telegram Plattform
a menger Welt.

An dann, hicken,
huet de Beamten séier a haart derbäigesat:
mee ech wäert d'Saachen (hei am IT) an Uerdnung setzen."
(...).

Den Durov mengt mat Recht, datt et autoritär Staaten ass, déi virun him fäerten, de Cypherpunk, a Roskomnadzor a gëllene Schëlder mat hiren DPI-Filter stéieren him net wierklech.
(Politesch Technik)

Meng technesch Politik ass méi einfach, ech kann hei meng Gedanken iwwer suergfälteg Blockéierung am RuNet beschreiwen, awer ech gleewen datt déi progressiv Bierger vun Modern Russesch an Habr Benotzer d'Onprofessionalitéit vun der aktueller Regierung aus der éischter Hand gefillt hunn, also wäert ech mech op eng limitéieren. eenzege Saz: eis technesch Politik ass "Digital Resistenz". "Famill a Frënn e stabile Kommunikatiounskanal ubidden."

Deployment vun MTProto Proxy Telegram

  • Den technesche Schwieregkeetsgrad ass "net schwéier", wann Dir zum Beispill dëse Cheat-Sheet befollegt.
  • Den Zouverlässegkeetsniveau ass "iwwerduerchschnëttlech": d'Docker-Bild funktionnéiert stabil, et muss net all Dag nei gestart ginn, wéi d'Entwéckler an hirer offizieller Telegram Dokumentatioun geschriwwen hunn, awer de Container enthält wahrscheinlech e puer Schwachstelle.
  • Niveau vun der Resistenz / Besuergnëss - 10 ISIS Memberen weave hir Verschwörungen "Verwandte profitéieren vun", de Verbuet ass net eemol vun der RKN ukomm an all dës Zäit (zënter Fréijoer).
  • De Vertrauensniveau ass "ëffentlech Baby Mësstrauen", de Problem ass op der Client Säit (e puer Frënn si verdächteg vu mengem MtprotoProxy).
  • Den Testosteronniveau ass "net méi héich ginn."
  • Finanzkäschten - "0₽".
  • Finanziell Belounung "hänkt net vum Bierger Durov of." Promotioun ass d'Fäegkeet fir Reklammen ze imposéieren.

Mir bauen eis TelegramProxy mat de "gratis/perséinleche" Kapazitéiten vun Amazon-ec2: t2.micro. Ech benotzt dat auto.

Okay, mir hunn eise gratis Server ofgesat, loosst eis op déi offiziell Websäit goen dockerhub an download den Docker Container.

Et ass net néideg fir e Bild, Datei oder Zauberknapp ze sichen - "si existéieren net", all Magie gëtt am CLI gemaach:

$ docker pull telegrammessenger/proxy #образ скачан.

Awer ier "dat", installéiert Docker fir den CLI:

sudo apt-get install docker.io docker

Weider, an der offizieller Dokumentatioun vum MtprotoProxyTelegram gi mir gefrot ongeféier déi folgend ze maachen, mir maachen:

$ sudo su && docker run -d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data telegrammessenger/proxy:latest #запускаем наш контейнер «mtproto-proxy».

No dësem Kommando erschéngt eng HEX-String am Terminalausgang, awer mir sinn net interesséiert.

Mir schreiwen am CLI:

$ docker logs mtproto-proxy

A mir kréien déi néideg Donnéeën:

Deploy Är MTProxy Telegram mat Statistiken
Am Ausgang vun dësem Log gi mir gewisen (schwaarz):

A) eise Server IP (extern Server IP);
B) an eng zoufälleg Geheimnis - eng zoufälleg String an HEX.

Ier Dir eis MtproProxy registréiert, musst Dir d'Haapt Firewall iwwer iptables konfiguréieren (egal wéi Dir de Traffic op dësem VPC redirectéiert, et wäert onroueg sinn, well déi wichtegst Firewall an Amazon-EC2 an der Webinterface läit an eng méi héich Prioritéit huet iwwer iptables).

Loosst eis op "Konsole Amazon-EC2" an der Sécherheetsgrupp an oppen erakommen Port 443 (logesch Masking Verkéier fir d'éischte Kéier).

Deploy Är MTProxy Telegram mat Statistiken

Mir huelen eis "IP a geheim" Daten aus dem Logbuch a ginn op den Telegram Messenger, fanne den offiziellen MTProxy Admin Bot (@MTProxybot) a registréiert eis Mtproxy: lafen de Kommando [/ newproxy] a gitt [our_ip:443], an dann eis [geheime / HEX].

Wann Dir Iech verréckt wann Dir Daten agitt, gëtt de Bot rosen a schéckt Iech op ...

Wann Dir zwou Zeilen ouni Feeler ausfëllt, kritt Dir Genehmegung an e funktionnéierende Link op Ären aktuellen MtprotoProxyTelegram, deen Dir mat jidderengem deele kënnt.

Deploy Är MTProxy Telegram mat Statistiken

Och duerch dëse Bot kënnt Dir Äre Sponsoring-Kanal derbäi (awer net e Chat), wou Dir Är Meenungen op d'Benotzer imposéiert, déi mat Ärem Server verbonne sinn, an Dir kënnt "Spammen" vermeiden an Är potenziell Clienten net stéieren andeems Dir net weist de Kanal an der gepecht Messenger Lëscht.

E puer méi Wierder iwwer de Bot, Dir kënnt Statistiken do ufroen, awer "et ass och en Donut." Anscheinend sinn "Statistiken" verfügbar wann et eng "Crowd vu Parasiten" hannert Iech zu Makhachkala ass.

Iwwerwaachung

Wéi vill Benotzer kënne mir mat eisem Server verbannen? An iwwerhaapt, wien/wat ass do? Waat? A wéi vill?

Kucke mer wat der offizieller Dokumentatioun do ass... Jo, loosst eis et esou maachen:

$ curl http://localhost:2398/stats или вот так $ docker exec mtproto-proxy curl http://localhost:2398/stats # и нам выдадут статистику прямо в CLI.

"Halt Är Tasche méi breet" Mat de proposéierte Befehle kréie mir ëmmer en ähnleche Feeler:

«curl: (7) Ausgefall op localhost port ze konnektéieren 2398: Verbindung refuséiert»

Eise Proxy wäert schaffen. Awer! Mir kréien e Bagel, net Statistiken.

Dir kënnt Saachen fir rout-Aen Leit maachen: kontrolléieren

$ netstat -an | grep 2398 и...

Am Ufank hunn ech geduecht datt dëst e weidere Problem mat den Telegram Entwéckler war (an ech mengen nach ëmmer), dunn hunn ech eng gutt temporär Léisung fonnt: den Docker Container mat enger Datei poléieren.

Méi spéit huet dës Informatioun meng Ae gefaang:

iwwer de Staat dances vun Roskomnadzor ronderëm "Statistiken".

"Mir hunn e puer ëffentlech Proxyen op eise Server blockéiert mat den Datenbanken vum Firehol-Projet. Dëse Projet iwwerwaacht Lëschte mat ëffentleche Proxyen a kreéiert Datenbanken mat hinnen.

Vun deem Moment un (dat ass bal zwee Deeg) gouf keng eenzeg IP Adress vun eisem russesche Proxy blockéiert.

3. Mir soen Iech wéi Dir e Proxy mécht, dee fir Roskomnadzor bal invulnerabel ass an e Skript deelen fir ëffentlech Proxyen ze blockéieren.

- Update den Docker Container (oder Daemon) MTProto Proxy op déi lescht Versioun: RKN berechent al Versioune mam Statistikport benotzt, deen un 0.0.0.0 gebonnen war an sech eenzegaarteg fir de ganzen Internet identifizéiert huet. Besser awer, öffnen déi erfuerderlech Ports mat iptables op, a maach de Rescht zou (erënnert datt am Fall vun engem Docker Container, Dir sollt d'FORWARD Regel benotzen).

- Roskomnadzor huet laang geléiert Traffic ze dumpen: si gesinn Ufroe bannent HTTP an SOCKS5 Proxyen, a gesinn och déi al Versioun vun MTProto Proxy Verdueblung.

Wann Cliente vun e puer Ubidder, déi sou Dumps installéiert hunn, Zougang zu Telegram duerch sou Proxyen hunn, gesäit RKN esou Ufroen a blockéiert direkt dës Proxyen. Datselwecht gëlt fir MTProto Proxy mat aler Verdueblung.

Léisung: Gitt Clienten déi mam Proxy konnektéieren e Geheimnis mat nëmmen dd am Ufank (net néideg zousätzlech dd Buschtawen an den Astellunge vum mtproto Proxy selwer ze spezifizéieren). Dëst wäert eng Versioun vun Obfuscatioun aktivéieren déi Dumps net erkennen kënnen.

A keng HTTP oder SOCKS5 Proxyen.

- En Tweak mat der Hëllef vun deem all Besëtzer vun engem Telegram Proxy, dee reegelméisseg vum RKN verbannt ass, komplett (oder bal komplett) blockéiere kann (a gläichzäiteg sécherstellen datt RKN läit).

E Skript deen ëffentlech Proxyen verbitt an e klengt Handbuch dofir.

Source

Eise Proxy ass pro-westlech, ech hu keng Probleemer/Blockéierungen am Fréijoer a kille Summerdeeg begéint, et huet sech och net zu engem kreative Problem gelent, also hunn ech net mam Tempoverloscht gepackt an' t füügt den dd* Präfix un de Schlëssel.

D'Handbuch "Statistiken / Iwwerwachung erhalen" no den offiziellen Instruktioune vum MtprotoProxyTelegram funktionnéiert net / al, Dir musst d'Docker-Bild reparéieren.

Mir fixen et.

Mir hunn de Container nach laafen:

$ docker stop mtproto-proxy #останавливаем наш запущенный docker-контейнер и запускаем новый образ с пропущенным флагом статистики

$ docker run --net=host --name=mtproto-proxy2 -d -p443:443 -v proxy-config:/data -e SECRET=ваш_предыдущий_секрет_hex telegrammessenger/proxy:latest

Loosst eis d'Statistike kucken:

$ curl http://localhost:2398/stats

curl: (7) Ausgefall op 0.0.0.0 port 2398: Verbindung refuséiert
Statistike sinn nach ëmmer net verfügbar!...

Fannt d'ID vum Docker Container eraus:

$ docker ps

CONTAINER ID IMAGE Kommando geschaf STATUS PORTER NAMEN
f423c209cfdc telegrammessenger/proxy:läscht "/bin/sh -c '/bin/ba..." Virun ongeféier enger Stonn Up Ongeféier eng Minutt 0.0.0.0:443->443/tcp mtproto-proxy2

Loosst eis mat eiser Charta am Docker Container goen:

$ sudo docker exec -it f423c209cfdc /bin/bash

$ apt-get update
$ apt-get install nano
$ nano -$ run.sh

An an der ganz leschter Zeil vum "run.sh" Skript addéiere mer de fehlend Fändel:

«--http-statistiken»
"exec /usr/local/bin/mtproto-proxy -p 2398 -H 443 -M "$WORKERS" -C 60000 —aes-pwd /etc/telegram/hello-explorers-how-ass-you-do-u root $CONFIG --allow-skip-d h --nat-info "$INTERNAL_IP:$IP" $SECRET_CMD $TAG_CMD"

Füügt "—http-stats", sou eppes soll esou ausgesinn:

«exec /usr/local/bin/mtproto-proxy -p 2398 --http-stats -H 443 -M "$WORKERS" -C 60000 --aes-pwd /etc/telegram/hello-explorers-how-are-you-doing -u root $CONFIG --allow-skip-d h --nat-info "$INTERNAL_IP:$IP" $SECRET_CMD $TAG_CMD»

Ctrl + o / Ctrl + x / Ctrl + d (späicheren / Nano erausgoen / Container erausgoen).

Mir starten eisen Docker Container nei:

$ docker restart mtproto-proxy2

Dat ass et, elo op Kommando:

$ curl http://localhost:2398/stats #получаем объемную статистику

Deploy Är MTProxy Telegram mat Statistiken
Et gëtt vill "Dreck" an de Statistiken (1/3 dovun ass um Screenshot), erstellt en Alias:

$ echo "alias telega='curl localhost:2398/stats | grep -e total_special -e load_average_total'" >> .bashrc && bash

Mir kréien wat mir den Docker Container poléiert hunn: d'Zuel vun de Verbindungen a Laascht:

$ telega

Deploy Är MTProxy Telegram mat Statistiken
Den Docker Container leeft, d'Statistike dréinen.

Ressourcen ausginn

Egal wéi cool Dir sidd Stuart Redman, souguer Dir verloosst eng Spuer vun go.na op Är Underpants. E Lafen Docker Bild léisst e wesentleche Foussofdrock.

Et mécht kee Sënn d'Virdeeler an Nodeeler vun Docker Biller ze beschreiwen; en Docker Container ass eng Mini-virtuell Maschinn déi manner Ressourcen verbraucht wéi eng "richteg" virtuell Maschinn, zum Beispill VirtualBox, awer et mécht.

1) D'Docker Bild gëtt mat oder ouni Statistiken lancéiert, zwee Clienten frolicken oder zéng - Ressourcen gi benotzt ~ gläich: 75% vun der Gesamtleistung vun der CPU t2.micro.

2) Loosst eis de VPC Server iwwerwaachen:

Deploy Är MTProxy Telegram mat Statistiken

Aus der Ressourceverbrauchsgrafik op VPC gesi mir datt den Docker Container konstant ~7,5% vum Gesamtmax verbraucht. CPU Leeschtung a gouf vun mir bewosst / temporär op Mee gestoppt 28 (Notiz - de Server leeft och OpenVPN & pptp).

Firwat ass 10% konstant CPU lued d'Limite fir dëse Server?

Well et Restriktiounen vum Deel vun Amazon EC2 sinn a si ginn a Kreditter berechent:

Deploy Är MTProxy Telegram mat Statistiken

1 CPU Kreditt = 1 CPU Betribssystemer bei 100% Laascht fir eng Minutt, a mir hunn 6 Credits (dat ass, an Biergspëtzten, 100% CPU Notzung ass méiglech bannent 6 Minutten, an da wäert d'CPU Muecht erofgoen). Aner Kombinatioune: zum Beispill, 1 CPU Kreditt = 1 CPU Lafen bei 50% Laascht fir zwou Minutten (dat ass, mir kënnen d'CPU bei 50% Laascht fir 12 Minutten benotzen), oder, zum Beispill, eng konstant 10% vun der CPU Laascht während der ganzer Zäit, etc.

Conclusiounen

  • Mir sinn Deel vun der Digital Resistenz. Mir hunn eise "Mammen a Pappen" en zouverléissege Kommunikatiounskanal zur Verfügung gestallt.
  • Wann Dir MtprotoProxyTelegram an OpenVPN op Ärem Server ofgesat hutt, awer näischt méi, gëtt et keng Verspéidungen / Pings / Feeler, awer wann Dir dauernd experimentéiert mat Ärem t2 / Mikro, da erwaarden d'Verzögerung vun der Kommunikatioun.
  • Meng iwwerséiesch Ping ass ~100-250ms, et gi keng Verspéidungen an der Stëmmkommunikatioun.
  • Finanzkäschte fir all "dëst" (inklusive VPC Ressourcen) = 0₽.

Reprint vun Ärem Artikel.

UPD: Dank e puer Habrower fir nëtzlech Kommentaren, ass et wierklech méiglech (gëtt Statistiken ënnerstëtzt?) Et gi besser Analoga zum offiziellen Mtproto Proxy Telegram Docker Bild.

Source: will.com

Setzt e Commentaire