Az MTProxy Telegram telepítése statisztikákkal

Az MTProxy Telegram telepítése statisztikákkal

"Én örököltem ezt a rendetlenséget,
kezdve a szemérmetlen Zellóval; LinkedIn
és a „mindenki más” szóval végződik a Telegram platformon
az én világomban.

És akkor csuklás,
A hivatalnok sietve és hangosan hozzátette:
de rendet rakok (itt az informatikában)"
(...).

Durov joggal hiszi, hogy a tekintélyelvű államoknak kell félniük tőle, egy ciferpunktól, a Roszkomnadzor és a DPI-szűrőikkel ellátott aranypajzsok pedig nem igazán zavarják.
(Politikai technika)

Az én technikai politikám egyszerűbb, itt leírhatom gondolataimat a Runet gondatlan blokkolásával kapcsolatban, de úgy gondolom, hogy a modern orosz és a habr felhasználók haladó polgárai a saját bőrükön érezték a jelenlegi kormányzat szakszerűtlenségét, ezért csak azokra szorítkozom. egyetlen kifejezés: technikai szabályzatunk a „Digitális ellenállás” . "rokonok és barátok számára stabil kommunikációs csatorna biztosítása."

MTProto proxy Telegram telepítése

  • A technikai bonyolultság „könnyű”, ha például követed ezt a csalólapot.
  • A megbízhatósági szint „átlag feletti”: a docker image stabilan működik, nem kell minden nap újraindítani, ahogy a fejlesztők is írták hivatalos Telegram dokumentációjukban, de a konténer valószínűleg tartalmaz néhány sebezhetőséget.
  • Az ellenállás/szorongás szintje - 10 ISIS-tag szövi a "rokonok által használt" összeesküvését, a tiltás az RKN-től még egyszer sem jött mindig (tavasz óta).
  • A bizalom szintje a "nyilvános baba bizalmatlanság", ami ügyféloldali probléma (egyes barátok gyanakodnak az MtprotoProxy-mra).
  • A tesztoszteronszint - "nem lett magasabb".
  • Pénzügyi költségek - "0₽".
  • Pénzügyi jutalom - "nem függ Durov állampolgártól". Promóció – a reklámozás képessége.

TelegramProxyunkat az Amazon-ec2 „ingyenes / személyes” kapacitásaira emeljük: t2.micro. használtam ezt autó.

Rendben, telepítette az ingyenes szervert, lépjen a hivatalos webhelyre dockerhub és töltse le a docker-tárolót.

Nem kell képet, fájlt vagy varázsgombot keresni – „nincs ott”, minden varázslat a CLI-ben történik:

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

De előtte telepítse a dockert a CLI-hez:

sudo apt-get install docker.io docker

Továbbá az MtprotoProxyTelegram hivatalos dokumentációjában a következőket ajánljuk fel:

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

A parancs után egy HEX karakterlánc jelenik meg a terminál kimenetében, de nem vagyunk rá kíváncsiak.

CLI-ben írjuk:

$ docker logs mtproto-proxy

És megkapjuk a szükséges adatokat:

Az MTProxy Telegram telepítése statisztikákkal
Ennek a naplónak a kimenetén a következő látható (elkenődött):

A) szerverünk ip-je (külső szerver ip-je);
B) és egy véletlen titok - egy véletlenszerű karakterlánc HEX-ben.

Az MtproProxy regisztrálása előtt be kell állítania a fő tűzfalat az iptables felett (függetlenül attól, hogy hogyan irányítja át a forgalmat erre a VPC-re, az rossz lesz, mivel az Amazon-EC2 fő tűzfala a webes felületen található, és magasabb prioritást élvez, mint iptables).

Megyünk "konzol Amazon-EC2" a biztonsági csoportban, és nyissa meg a 443-as bejövő portot (logikai maszkolás forgalom először).

Az MTProxy Telegram telepítése statisztikákkal

Kivesszük az „ip és titkos” adatainkat a naplóból, és belépünk a Telegram messengerbe, megkeressük a hivatalos MTProxy Admin Bot-ot (@MTProxybot) és regisztráljuk az MtproProxy-nkat: futtassuk a [/newproxy] parancsot, majd írjuk be a [our_ip:443] parancsot, majd majd a mi [titkunk /HEX].

Ha elrontja az adatbevitelt, a bot mérges lesz, és elküldi Önt a ...

Ha hibátlanul tölt ki két sort, jóváhagyást és egy működő hivatkozást kap az aktuális MtprotoProxyTelegramjára, amelyet bárkivel megoszthat.

Az MTProxy Telegram telepítése statisztikákkal

Ezen a boton keresztül hozzáadhatja szponzori csatornáját (de nem csevegést), ahol ráerőlteti nézeteit azokra a felhasználókra, akik csatlakoztak a szerveréhez, vagy nem "spamelhet" és nem zavarhatja potenciális ügyfeleit anélkül, hogy a csatorna megjelenítése a rögzített üzenetküldő listában.

Még néhány szót a botról, ahol lehet statisztikát kérni, de „fánkot is”. Úgy tűnik, a „statisztika” akkor érhető el, ha „tömeg ingyenélő” van mögötted, Mahacskala.

megfigyelés

Hány felhasználót tudunk csatlakozni a szerverünkhöz? És különben is, ki/mi van ott? Mit? És hányat?

Megnézzük, mi van ott a hivatalos dokumentáció szerint... Igen, itt, csináld így:

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

„Tartsd szélesebben a zsebed” A javasolt parancsok szerint mindig hasonló hibaüzenetet kapunk:

«curl: (7) Nem sikerült csatlakozni a localhost 2398-as portjához: A csatlakozás megtagadva»

A proxy működni fog. De! Bagel, nem statisztikákat kapunk.

A vörös szeműekért tehetsz valamit: ellenőrizd

$ netstat -an | grep 2398 и...

Először azt hittem, hogy ez egy újabb jamb a Telegram fejlesztői mögött (és még mindig így gondolom), aztán találtam egy átmeneti jó megoldást: egy fájllal fényesítem a Docker Containert.

Később megakadt egy infa:

a Roskomnadzor "statisztika" körüli államtáncairól.

„A firehol projekt adatbázisait használva letiltottuk néhány nyilvános proxyt a szervereinken. Ez a projekt nyilvános proxykkal figyeli a listákat, és adatbázisokat készít velük.

Ettől a pillanattól kezdve (azaz már majdnem két napja) egyetlen orosz proxy IP-címe sem lett blokkolva.

3. Elmondjuk, hogyan készítsünk olyan proxyt, amely szinte sebezhetetlen a Roskomnadzor számára, és hogyan oszthatunk meg egy szkriptet a nyilvános proxyk blokkolására.

- Frissítse az MTProto proxy docker konténerét (vagy démonját) a legújabb verzióra: az RKN a statisztikai port alapján számítja ki a régi verziókat, amely 0.0.0.0-hoz volt kötve, és egyedileg azonosította magát az egész interneten. Még jobb, ha iptables segítségével nyissa meg a szükséges portokat, és zárja be a többit (ne feledje, hogy docker konténer esetén a FORWARD szabályt kell használnia).

— A Roskomnadzor már régen megtanulta a forgalom kiürítését: látják a kéréseket a HTTP és a SOCKS5 proxykon belül, és látják az MTProto proxy obfuszkáció régi verzióját is.

Amikor egyes szolgáltatók ügyfelei, akiknél ilyen kiíratások vannak telepítve, ilyen proxykon keresztül hozzáférnek a Telegramhoz, az RKN látja az ilyen kéréseket, és azonnal blokkolja ezeket. Ugyanez vonatkozik az MTProto proxyra is a régi obfuszkációval.

Megoldás: a titkosságot csak az elején dd-vel osszuk ki a proxyhoz csatlakozó klienseknek (nem kell magának az mtproto proxynak a beállításaiban megadni további dd betűket). Ez lehetővé teszi az elhomályosítás egy olyan változatát, amelyet a dumppilek nem tudnak észlelni.

És nincs HTTP vagy SOCKS5 proxy.

- Beállítás, melynek segítségével minden, az RKN által rendszeresen kitiltott távirat-proxy tulajdonosa teljesen (vagy majdnem teljesen) leállíthatja a blokkolást (és ezzel egyidejűleg megbizonyosodhat arról, hogy az RKN hazudik).

A nyilvános proxykat tiltó szkript és egy kis kézikönyv hozzá.

Forrás

A proxynk nyugatbarát, a tavaszi és a hűvös nyári napokon nem találkoztam problémával/dugulással, kreatív feladatot sem vonzott, így nem vesztettem a tempót és nem adtam hozzá a dd* előtagot. a kulcs.

Az MtprotoProxyTelegram hivatalos utasításai szerint a „statisztika lekérése/figyelés” kézikönyv nem működik/elavult, a docker image-t meg kell javítani.

Megjavítjuk.

A tároló még fut:

$ 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

Nézzük a statisztikákat:

$ curl http://localhost:2398/stats

curl: (7) Nem sikerült csatlakozni a 0.0.0.0 2398-as porthoz: A csatlakozás megtagadva
A statisztika még mindig nem elérhető!...

Keresse meg a dokkolótároló azonosítóját:

$ docker ps

TÉRÉS ID KÉP PARANCS LÉTREHOZOTT ÁLLAPOT PORTNEVEI
f423c209cfdc telegrammessenger/proxy:latest "/bin/sh -c '/bin/ba…" Körülbelül egy órája Fel Körülbelül egy perce 0.0.0.0:443->443/tcp mtproto-proxy2

A charterrel a dokkolókonténerbe megyünk:

$ sudo docker exec -it f423c209cfdc /bin/bash

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

És a "run.sh" szkript legutolsó sorába adja hozzá a hiányzó jelzőt:

«--http-stats»
"exec /usr/local/bin/mtproto-proxy -p 2398 -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"

Adja hozzá a "--http-stats"-t, valami ilyesmi működnie kell:

«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 (nano mentése/kilépése/tárolóból való kilépés).

Indítsa újra docker konténerünket:

$ docker restart mtproto-proxy2

Minden, most parancsra:

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

Az MTProxy Telegram telepítése statisztikákkal
Sok „szemét” van a statisztikákban (1/3-a a képernyőn van), hozzon létre egy álnevet:

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

Megkapjuk, hogy mire lett csiszolva a dokkoló konténer: a csatlakozások száma és a terhelés:

$ telega

Az MTProxy Telegram telepítése statisztikákkal
A Docker konténer fut, a statisztikák pörögnek.

Elköltött források

Amilyen menő vagy Stuart Redman, még te is nyomot hagysz a bugyidon. Egy futó Docker-kép nagy lábnyomot hagy maga után.

Nincs értelme leírni a docker képek előnyeit és hátrányait, a docker konténer egy mini-virtuális gép, amely kevesebb erőforrást fogyaszt, mint egy „igazi” virtuális gép, például a VirtualBox, de ez van.

1) Docker-image statisztikákkal vagy anélkül elindítva két kliens tréfálkodik vagy tíz - az erőforrásokat ~ ugyanúgy használják fel: a teljes CPU t75.micro teljesítményének 2%-a.

2) Megvizsgáljuk a VPC szerver felügyeletét:

Az MTProxy Telegram telepítése statisztikákkal

A VPC erőforrás-kihasználtsági grafikonjából azt látjuk, hogy a docker konténer folyamatosan a teljes max. ~ 7,5%-át fogyasztja. CPU teljesítményét és május 28-án szándékosan/ideiglenesen leállítottam (Megjegyzés – OpenVPN és pptp is fut a szerveren).

Miért 10%-os állandó CPU-használat a korlát ennél a szervernél?

Mivel az Amazon EC2 korlátozásokat ír elő, és ezeket kreditben számítják ki:

Az MTProxy Telegram telepítése statisztikákkal

1 CPU kredit = 1 CPU 100%-os terhelésen dolgozik egy percig, és van 6 kreditünk (vagyis csúcsoknál 100 percen belül 6%-os CPU kihasználtság lehetséges, és akkor csökken a CPU teljesítmény). Egyéb kombinációk: például 1 CPU kredit = 1 CPU, amely két percig 50%-os terheléssel működik (vagyis 50 percig használhatjuk a CPU-t 12%-os terheléssel), vagy például állandó 10%-os CPU-terhelés egész idő alatt stb.

Álláspontja

  • Részei vagyunk a "Digitális Ellenállásnak". Megbízható kommunikációs csatornát biztosítottak "apáiknak és anyukáiknak".
  • Ha MtprotoProxyTelegram és OpenVPN telepítve van a szerveren, de nincs több, akkor nem lesz késés / ping / hiba, de ha folyamatosan kísérletezik a t2 / micro-val, akkor várja meg a kommunikációs fékeket.
  • A tengerentúli pingem ~100-250ms, a hangkommunikációban nincs késés.
  • Mindezzel kapcsolatos pénzügyi költségek (beleértve a VPC-forrásokat is) = 0₽.

Cikkének újranyomtatása.

UPD: Köszönet néhány habrausernek a hasznos megjegyzésekért, valóban lehetséges (támogatott a statisztika?), Vannak jobb analógok a hivatalos Mtproto proxy Telegram dokkolóképnek.

Forrás: will.com

Hozzászólás