âáá®á¡ááŸá¯ááºá¡ááœá±ážááᯠá¡ááœá±ááá²á·áááºá
á¡ááŸááºáááºážáá²á· Zello áá²á· á áááºáááºá LinkedIn
Telegram ááááºáá±á¬ááºážáá±á«áºááœáẠ"á¡ááŒá¬ážáá°ááá¯ááºáž" ááŸáá·áºá¡áá¯á¶ážáááº
áá«á·ááá¹áá¬ááŸá¬áááŒá®ážáá±á¬á· ááŒáá¯á·ááá¯ážá
á¡áá¬ááŸáá á¡áá»ááºá ááá¯ááŸáá·áº áá»ááºáá±á¬ááºá áœá¬ áááºááŒá±á¬áááºá
áá«áá±ááá·áº áá«á¡áá¬ááœá±ááᯠá ááºážá áá áºááá»áá¬ážááẠ(áá®ááŸá¬ IT)"
( ... ).
Durová áá°á·ááá¯ááŒá±á¬ááºááá·áºáá±á¬ á¡á¬áá¬ááŸááºááá¯ááºáá¶áá»á¬ážá cypherpunká Roskomnadzor ááŸáá·áº áááºážááá¯á·á DPI á
á
áºáá¯ááºááŸá¯áá»á¬ážáá«ááŸááá±á¬ ááœáŸá±ááá¯ááºážáá»á¬ážááẠáá°á·ááᯠá¡ááŸááºáááẠá
áááºá¡ááŸá±á¬áá·áºá¡ááŸááºáááŒá
áºááá·áºáá±á
(ááá¯ááºáá¶áá±ážáááºážááá¬)
áá»áœááºá¯ááºááááºážááá¬ááá¯ááºáá¬áá°áá«áááẠááá¯ááá¯ááá¯ážááŸááºážáá«áááºá RuNet ááœáẠááááááºááœááºááááºááá¯á·ááŒááºážá¡ááœáẠáá»áœááºá¯ááºáá¡ááœá±ážá¡ááŒááºáá»á¬ážááᯠá€áá±áá¬ááœáẠáá±á¬áºááŒááá¯ááºáá±á¬áºáááºáž áá±ááºáá
áºáá¯ááŸá¬ážááŸáá·áº Habr á¡áá¯á¶ážááŒá¯áá°áá»á¬ážá ááá¯ážáááºáá±á¬ááá¯ááºáá¶áá¬ážáá»á¬ážááẠáááºážááá¯á·áááá¯ááºááá¯ááºá¡áá¬ážá¡áá±ááŒáá·áº áááºááŸáá¡á
áá¯ážáá ááá±á¬áºáááºááŸááºáááºáááºááŸá¯ááᯠáá¶á
á¬ážááááŒáá±á¬ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯ááºááá¯áẠááá·áºáááºááá¯ááºáá«áááºá á
áá¬ážá
á¯áá
áºáá¯- áá»áœááºá¯ááºááá¯á·ááááºážááá¬ááá¯ááºáá¬áá°áá«áááŸá¬ "áá
áºáá»á
áºáááºáá±á¬áºááŸááºáá±áž" ááŒá
áºáááºá "ááœá±áá»áá¯ážáá»á¬ážááŸáá·áº áá°áááºáá»ááºážáá»á¬ážááᯠáááºááŒáááºáá±á¬ áááºááœááºáá±ážáááºážááŒá±á¬ááºážááŒáá·áº áá¶á·ááá¯ážáá±ážááŒááºážá"
MTProto ááá±á¬ááºá á® áááºáá®ááááºááᯠá¡áá¯á¶ážááŒá¯áá±áá«áááºá
- á¥ááá¬á¡á¬ážááŒáá·áº áááºááẠá€ááááºáááºááŸáá·áºááŒá¬ážááŸá¯á á¬ááœááºááᯠááá¯ááºáá¬áá«áá áááºážááá¬ááá¯ááºáᬠááŸá¯ááºááœá±ážááŸá¯á¡ááá·áºááẠ"ááœááºáá°áááº" ááŒá áºáááºá
- áá¯á¶ááŒááºá áááºáá»áááŸá¯á¡ááá·áºááẠ"áá»ááºážáá»áŸáááºáá¬ááœááºáááº" ááŒá áºáááº- docker áá¯á¶ááẠáááºááŒáááºá áœá¬á¡áá¯ááºáá¯ááºáááºá áá±á¬á·ááºáá²áá±ážáá¬ážáá°áá»á¬ážááẠáááºážááá¯á·áááá¬ážááẠTelegram á á¬ááœááºá á¬áááºážáá»á¬ážááœáẠáá±ážáá¬ážáá¬ážááá·áºá¡ááá¯ááºáž áá±á·ááá¯ááºážááŒááºáááºá áááºáááºáááá¯á¡ááºáá±á¬áºáááºáž ááœááºááááºáá¬ááœáẠá¡á¬ážáááºážáá»ááºá¡áá»áá¯á·áá«ááŸááááºá
- áá¯áá¶ááŸá¯/á áá¯ážááááºááŸá¯á¡ááá·áº - ISIS á¡ááœá²á·ááẠ10 ááẠáááºážááá¯á·á áá°ážáá±á«ááºážááŒá¶á ááºááŸá¯áá»á¬ážááᯠ"ááœá±áá»áá¯ážáá»á¬áž á¡áá¯á¶ážááŒá¯ááŒááºáž" áá°áá±á¬ áá¬ážááŒá áºáá»ááºááẠRKN á០áá áºáá»áááºáá¯á¶áž (ááœá±áŠážááááºážááááº) ááá±á¬ááºáá²á·áá±á
- áá¯á¶ááŒááºááŸá¯á¡ááá·áºááẠáá±á¬ááºáááºáááºá០ááŒá¿áá¬ááŒá áºááá·áº "á¡áá»á¬ážááŒááºáá°ááá¯ááºáᬠááá±ážááá¯á¶ááŒááºááŸá¯" ááŒá áºááẠ(áá°áááºáá»ááºážá¡áá»áá¯á·á áá»áœááºá¯ááºá MtprotoProxy ááᯠáá¶ááááŒá áºáá±ááŒáááº)á
- Testosterone ááá¬á - "áááŒáá·áºáá¬ážáá°ážá"
- ááœá±ááŒá±ážáá¯ááºáá»á áááẠ- "0âœ"á
- ááá¹áá¬áá±ážáá¯áá¬áẠ- "ááá¯ááºáá¶áá¬áž Durov á¡áá±á«áºááá°áááºáá«á" ááŒáŸáá·áºáááºáá±áž - ááŒá±á¬áºááŒá¬ááŒáá¬ááºážááá¯ááºááŸá¯á
áá»áœááºá¯ááºááá¯á·ááẠAmazon-ec2: t2.micro á âá¡ááá²á·/ááá¯ááºáá±ážááá¯ááºáá¬â á
áœááºážáááºáá»á¬ážáá±á«áºááœáẠáá»áœááºá¯ááºááá¯á·á TelegramProxy ááᯠááŒáŸáá·áºáááºáá«áááºá áá«áá¯á¶ážáá²á·áááº
áá±á¬ááºážááŒá®á áááºá á¡ááá²á· áá¬áá¬ááᯠá¡áá¯á¶ážááŒá¯ááŒá®áž ááá¬ážááẠáááºááá¯ááºááá¯á· ááœá¬ážáá«á
áá¯ááºáá¯á¶á ááá¯áẠááá¯á·ááá¯áẠááŸá±á¬áºááá¯ááºá¡áá»áá¯á·ááᯠááŸá¬ááẠáááá¯á¡ááºáá« - "ááá¯áá±áá¬ááœáẠáááŸááá«"á ááŸá±á¬áºááá¬á¡á¬ážáá¯á¶ážááᯠCLI ááœáẠáá¯ááºáá±á¬ááºáááº-
$ docker pull telegrammessenger/proxy #ПбÑаз ÑкаÑаМ.
ááá¯á·áá±á¬áº "ááá¯ááá¯á·áááŒá¯áá®" CLI á¡ááœáẠdocker ááá¯ááá·áºááœááºážáá«á
sudo apt-get install docker.io docker
ááá¯á·á¡ááŒááºá MtprotoProxyTelegram áááá¬ážáááºá á¬ááœááºá á¬áááºážááœááºá áá»áœááºá¯ááºááá¯á·ááẠá¡á±á¬ááºáá«áá²á·ááá¯á· áá áºáá¯áá¯áá¯ááºáá±á¬ááºááẠáááºážááŸááºážáá¬ážáá«áááºá
$ sudo su && docker run -d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data telegrammessenger/proxy:latest #запÑÑкаеЌ ÐœÐ°Ñ ÐºÐŸÐœÑÐµÐ¹ÐœÐµÑ Â«mtproto-proxy».
á€á¡áááá·áºáá±ážááŒá®ážáá±á¬ááºá terminal output ááœáẠHEX á á¬ááŒá±á¬ááºážáá áºáá¯áá±á«áºáá¬áááºááŒá áºáá±á¬áºáááºáž áááºážááá¯áá»áœááºá¯ááºááá¯á·á áááºááááºá á¬ážáá«á
áá»áœááºá¯ááºááá¯á·ááẠCLI ááœááºáá±ážáááº-
$ docker logs mtproto-proxy
ááá¯á¡ááºáá±á¬áá±áá¬ááᯠáá»áœááºá¯ááºááá¯á·áááŸááááº-
á€ááŸááºáááºážáá¡ááœááºááœááºá áá»áœááºá¯ááºááá¯á·á¡á¬áž ááŒááá¬ážááẠ(á¡áá¯ááºáá»áááº)á
á) áá»áœááºá¯ááºááá¯á·ááá¬áᬠip (ááŒááºááá¬áᬠip);
á) ááŸáá·áº áá»áááºážáá»áŸáá¯á·ááŸááºáá»áẠ- HEX ááŸá áá»áááºážá
á¬ááŒá±á¬ááºážá
áá»áœááºá¯ááºááá¯á·á MtproProxy ááᯠá á¬áááºážááœááºážááŒááºážáááŒá¯áá®á áááºááẠiptables áá»á¬ážáá±á«áºááŸá áááºá firewall ááᯠconfigure áá¯ááºááẠááá¯á¡ááºááẠ(ဠVPC ááá¯á· áááºáááºáá²á·ááá¯á· áááºážááŒá±á¬ááºážááŒá±á¬ááºážááœá¬ážáá«á á±á Amazon-EC2 ááŸá áááºá firewall ááẠáááºá¡ááºáá¬áá±á·á áºááœáẠáááºááŸáááŒá®áž ááá¯ááá¯áŠážá á¬ážáá±ážáá±á¬ááŒá±á¬áá·áº áááºážááẠááá¯ááºáá²áá±áááºááŒá áºáá«áááºá iptables)á
áá«ááá¯á·ááœá¬ážááŒááẠ"
áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·á âip and secretâ áá±áá¬ááᯠááŸááºáááºážááŸáá°á Telegram messenger ááá¯á·ááœá¬ážáá«á ááá¬ážááẠMTProxy á
á®áá¶ááá·áºááœá²áá° Bot (@MTProxybot) ááá¯ááŸá¬ááŒá®áž áá»áœááºá¯ááºááá¯á·á MtproProxy ááᯠááŸááºáá¯á¶áááºáá«- [/newproxy] á¡áááá·áºááᯠááœáá·áºááŒá®áž [our_ip:443] ááᯠááá¯ááºááá·áºáá«á ááá¯á·áá±á¬áẠáá»áœááºá¯ááºááá¯á·á [áá»áŸáá¯á·ááŸááºáá»áẠ/HEX]á
áá±áá¬ááá·áºáá²á·á¡áá« ááŸá¯ááºáá±ááẠbot á áá±á«áááœááºááŒá®áž áááºážááᯠááá¯á·áááá·áºáááº...
á¡áááºá áááºááẠá¡ááŸá¬ážá¡ááœááºážáááŸááá² á á¬ááŒá±á¬ááºážááŸá áºááŒá±á¬ááºážááᯠááŒáá·áºááœááºážáá«áá áááºááẠáááºáá°á·ááá¯áá»áŸ áá»áŸáá±ááá¯ááºááá·áº áááºááááºááŸá MtprotoProxyTelegram ááá¯á· á¡áá¯ááºáá¯ááºááá·áºááá·áºááºááᯠá¡áááºááŒá¯áá»ááºáááŸááááºááŒá áºáááºá
ááá¯á·á¡ááŒááºá ဠbot ááŸáááá·áºá áááºááẠáááºáá
ááœááºáá¬áá»ááºááẠ(ááá¯á·áá±á¬áº áá»ááºááá¯ááºáá«) ááá¯ááá·áºááœááºážááá¯ááºáááºá áááºááá¬áá¬ááŸáá·áºáá»áááºáááºáá¬ážáá±á¬á¡áá¯á¶ážááŒá¯áá°áá»á¬ážá¡áá±á«áº ááá·áºá¡ááŒááºáá»á¬ážááᯠáááºááá·áºááœááºážááá¯ááºáááºá ááá¯á·ááá¯áẠáááºááẠ"á
áááºáž" ááááá¯ááºáá² ááá·áºááŒá
áºááá¯ááºáá»á±ááŸááá±á¬áá±á¬ááºáááºáá»á¬ážááᯠá¡ááŸá±á¬ááºá¡ááŸááºáááŒá
áºá
á±áá²á áááºááá¯ážáá¬ážáá±á¬ messenger á
á¬áááºážááœáẠáá»ááºáááºááᯠááŒáááŒááºážá
á á¬áááºážá¡ááºážáá»á¬áž áá±á¬ááºážááá¯ááá¯ááºááá·áº bot ááŸáá·áºáááºáááºááá·áº áá±á¬ááºáááºá áá¬ážáá¯á¶ážá¡áá»áá¯á·á ááá¯á·áá±á¬áº "ááá¯ážáááºáá áºáá¯áááºážááŒá áºáááº"á ááá·áºááœáẠMakhachkala ááá±á¬ááºááœááºááœáẠ"á¡ááá²á·áááºáá°áá»á¬áž" ááŸááá±á¬á¡áá« "ááááºážááááºážáá»á¬áž" ááᯠáááá¯ááºáááºááŸá¬ áááºááŸá¬ážáá«áááºá
á á±á¬áá·áºááŒáá·áºáá±á·áá¬ááŒááºáž
áá»áœááºá¯ááºááá¯á·ááá¬áá¬ááá¯á· á¡áá¯á¶ážááŒá¯áá°áááºáá»áŸáá»áááºáááºááá¯ááºáááºáááºážá áá¬áá²ááŒá áºááŒá áºá áááºáá°/áá¬ááŸááá²á áá¬áá²? áááºáá»áŸááŸáááááºážá
ááá¬ážáááºá á¬ááœááºá á¬áááºážááœá±á¡á ááá¯ááŸá¬áá¬ááœá±ááŸááá² ááŒáá·áºááŒáá·áº... áá¯ááºáááºá áá®ááŸá¬ áá®ááá¯áá¯ááºáá«á
$ curl http://localhost:2398/stats ОлО Ð²ÐŸÑ Ñак $ docker exec mtproto-proxy curl http://localhost:2398/stats # О МаЌ вÑЎаЎÑÑ ÑÑаÑОÑÑÐžÐºÑ Ð¿ÑÑЌП в CLI.
"ááá·áºá¡áááºáááºááᯠááá¯áá»ááºá¡á±á¬ááºáá¬ážáá«" á¡ááá¯ááŒá¯áá¬ážáá±á¬ á¡áááá·áºáá»á¬ážá¡áá áá»áœááºá¯ááºááá¯á· á¡ááŒá²áááºáž á¡áá¬ážáá° á¡ááŸá¬ážáá áºáá¯ááᯠáááºáá¶áááŸááá«áááº-
«curl- (7) localhost port 2398 ááá¯á· áá»áááºáááºááẠáá¡á±á¬ááºááŒááºáá«- áá»áááºáááºááŸá¯ ááŒááºážááá¯áá¬ážáááºá»
áá»áœááºá¯ááºááá¯á·á proxy á¡áá¯ááºáá¯ááºáá«áááºá áá«áá±ááá·áº! Bagelá áá»áœááºá¯ááºááá¯á·áááŸááá±á¬á á¬áááºážááá¬ážááá¯ááºáá«á
áá»ááºáá¯á¶ážáá®ááŒááºážá¡ááœáẠáááºáá¯ááºáá±á¬ááºááá¯ááºáááº- á á áºáá±ážáá«á
$ netstat -an | grep 2398 О...
ááááá±á¬á· áá«á Telegram developer ááœá±áá²á· áá±á¬ááºááœááºááŸá¬ áá±á¬ááºááẠá¡áá»ááºá¡áááºážáá áºáá¯ááá¯á· áá»áœááºáá±á¬áºáááºáá²á·ááẠ(áá«áááºáž áá»áœááºáá±á¬áºáááºáá±áá¯ááºážáá«áá²)á ááŒá®ážáá±á¬á· áá¬áá®áá±á¬ááºážááœááºáá²á· ááŒá±ááŸááºážáá»ááºáá áºáá¯ááᯠááŸá¬ááœá±á·áá²á·áááº- Docker Container ááᯠááá¯ááºáá áºáá¯áá²á· ááœááºáááºááá¯ááºáá«á
áá±á¬ááºáá±á¬á· á¡ááºáá¬áá áºáá±á¬ááºá áá»áœááºáá±á¬á·áºáá»ááºáá¯á¶ážááᯠáááºážááá¯ááºáááºá
"á á¬áááºážá¡ááºážáá»á¬áž" áááºááẠRoskomnadzor áááŒááºáááºá¡ááá»á¬ážá¡ááŒá±á¬ááºážá
" firehol ááá±á¬áá»ááºááá±áá¬áá±á·á áºááá¯á¡áá¯á¶ážááŒá¯á áá»áœááºá¯ááºááá¯á·ááá¬áá¬áá»á¬ážááŸá public proxy á¡áá»áá¯á·ááᯠáá»áœááºá¯ááºááá¯á·ááááºááá¯á·áá¬ážáá«áááºá á€ááá±á¬áá»ááºááẠá¡áá»á¬ážáá°ááŸá¬ ááá±á¬ááºá á®áá»á¬ážááŒáá·áº á á¬áááºážáá»á¬ážááᯠá á±á¬áá·áºááŒáá·áºááŒá®áž áááºážááá¯á·ááŸáá·áºá¡áá° áá±áá¬áá±á·á áºáá»á¬áž ááŒá¯áá¯ááºáá±ážáááºá
ááá¯á¡áá»áááºááŸá á (ááá¯ááá¯áááºááŸá¬ ááŸá áºáááºáá®ážáá«ážááŸáááŒá®) ááŒá áºáá±á¬ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·á áá¯ááŸá¬ážááá±á¬ááºá á®á IP ááááºá á¬áá áºáá¯áááºážááᯠááááºááá¯á·áá¬ážááŒááºážáááŸááá«á
3. Roskomnadzor ááœáẠáá¶ááá¯ááºáááºáááŸáááá±á¬ááºááŒá áºáá±á¬ ááá±á¬ááºá á®áá áºáá¯ááŒá¯áá¯ááºáááºážááŸáá·áº á¡áá»á¬ážáá°ááŸá¬ ááá±á¬ááºá á®áá»á¬ážááᯠááááºááá¯á·áááºá¡ááœáẠáá¬ááºááœáŸááºážáá áºáá¯ááᯠáá»áŸáá±áá«áááºá
- MTProto proxy docker container (ááá¯á·ááá¯áẠdaemon) ááᯠáá±á¬ááºáá¯á¶ážáá¬ážááŸááºážááá¯á· á¡ááºááááºáá¯ááºáá«- RKN ááẠ0.0.0.0 ááŸáá·áº áá»ááºááŸá±á¬ááºáá¬ážááá·áº ááááºážááááºážá¡áá»ááºá¡áááºáá±á«ááºááŒáá·áº áá¬ážááŸááºážáá±á¬ááºážáá»á¬ážááᯠááœááºáá»ááºááŒá®áž á¡ááºáá¬áááºáá áºáá¯áá¯á¶ážá¡ááœáẠáá®ážááá·áºááœá²ááŒá¬ážáááºááŸááºáá¬ážáááºá ááá¯áá±á¬ááºážáá¬á iptables áá¯á¶ážááŒá®áž ááá¯á¡ááºáá²á· port ááœá±ááá¯ááœáá·áºááŒá®áž áá»ááºáá¬ááœá±ááᯠááááºááá¯ááºáá« (docker container ááŸá¬ FORWARD rule ááá¯áá¯á¶ážááá·áºáááºááá¯áᬠáááááá«)á
â Roskomnadzor ááẠá¡ááœá¬ážá¡áá¬ááᯠáááºáá²á·ááá¯á· á áœáá·áºáá áºááááºááᯠááœááºáá²á·ááá·áº ááááºážá áá±á·áá¬áá²á·áááº- HTTP ááŸáá·áº SOCKS5 proxies áá»á¬ážá¡ááœááºáž áá±á«áºááá¯ááŸá¯áá»á¬ážááᯠááœá±á·ááŒááŒá®áž MTProto proxy obfuscation á áá¬ážááŸááºážáá±á¬ááºážááá¯áááºáž ááœá±á·ááŒááºááááºá
ááá¯ááá¯á·áá±á¬á¡ááŸáá¯ááºáá¯á¶áá»á¬ážááŸáááá·áº áááºáá±á¬ááºááŸá¯áá±ážáá°á¡áá»áá¯á·á client áá»á¬ážááẠááá¯áá²á·ááá¯á·áá±á¬ proxy áá»á¬ážááŸáááá·áº Telegram ááá¯áááºáá±á¬ááºá¡áá¯á¶ážááŒá¯áá±á¬á¡áá«á RKN ááẠááá¯áá²á·ááá¯á·áá±á¬áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááá¯ááŒááºááŒá®áž ဠproxy áá»á¬ážááá¯áá»ááºáá»ááºážááááºááá¯á·áááºá áá±á¬ááºážááœááºážááŸá¯ááºááœá±ážááŸá¯ááŸáá·áºá¡áá° MTProto ááá±á¬ááºá á®ááŸáá·áº á¡áá°áá°áááºááŒá áºáááºá
ááŒá±ááŸááºážáá»ááº- á¡á ááœáẠdd ááŒáá·áºáᬠáá»áŸáá¯á·ááŸááºááŒáá·áºáá±áá« ááá±á¬ááºá á®ááá¯á· áá»áááºáááºáá±á¬ áá±á¬ááºáááºáá»á¬áž ( mtproto ááá±á¬ááºá á®á áááºáááºáá»á¬ážááœáẠdd á¡ááá¯á á¬áá¯á¶ážáá»á¬ážááᯠáááºááŸááºáááºáááá¯á¡ááºáá«)á áááºážááẠdumppiles áááœá±á·ááá¯ááºáá±á¬ ááŸá¯ááºááŸááºáááºááá·áºáá¬ážááŸááºážááᯠááœáá·áºáá±ážáá«áááºá
HTTP ááá¯á·ááá¯áẠSOCKS5 proxy áááŸááá«á
- RKN á០áá¯á¶ááŸááºáá¬ážááŒá áºáá¬ážáá±á¬ ááŒá±ážáááºážááá±á¬ááºá á®áá áºáá¯áááá¯ááºááŸááºáá áºáŠážá á®áá¡áá°á¡áá®ááŒáá·áº ááŸáááŸáá¯ááºážááŸá¯ááẠáá¯á¶ážá (ááá¯á·ááá¯áẠáá®ážáá«áž) ááááºááá¯á·ááŒááºážááᯠáá¯á¶ážááááºááá·áºááá¯ááºááẠ(áá áºáá»áááºáááºážááŸá¬ááẠRKN ááẠááááºáá¬áá±ááŒá±á¬ááºáž áá±áá»á¬á á±áááº)á
á¡áá»á¬ážáá°ááŸá¬ ááá±á¬ááºá á®áá»á¬ážááᯠááááºáááºááá·áº áá¬ááºááœáŸááºážááŸáá·áº áááºážá¡ááœáẠáááºá áœá²á á¬á¡á¯ááºáááºá
â
áá»áœááºá¯ááºááá¯á·á proxy ááẠá¡áá±á¬ááºááá¯ááºážááá¯áá¬ážáá°ááŒá áºáááºá ááœá±áŠážááŸáá·áº á¡á±ážááŒáá±á¬ááœá±áá¬áá®áá¬ááá»á¬ážááœáẠááŒá¿áá¬áá»á¬áž/ááááºááá¯á·ááŒááºážáá»á¬áž áááŒá¯á¶áá²á·ááá±á áááºážááẠáááºáá®ážááŸá¯áá¯ááºáááºážááᯠááœá²áá±á¬ááºááŒááºážáááŸááá±á¬ááŒá±á¬áá·áº á¡ááŸáááºá¡áá¯ááºááá»ááºáá² dd* ááŸá±á·áááºááᯠáááá·áºáá²á·áá«á áá±á¬á·á
MtprotoProxyTelegram áááá¬ážáááºááœáŸááºááŒá¬ážáá»ááºá¡á "á á¬áááºážááá¬ážáá»á¬ážááá°ááŒááºáž/á á±á¬áá·áºááŒáá·áºááŒááºáž" áááºá áœá²á á¬á¡á¯ááºááẠá¡áá¯ááºááá¯ááº/áá±ááºááá®áá±á¬á·áá«á áááºááẠdocker áá¯á¶á¡á¬áž ááŒá¯ááŒááºááááºááŒá áºáá«áááºá
áá»áœááºáá±á¬áºááá¯á·á ááŒááºáá±ážáááºá
ááœááºááááºáá¬ááẠáááºáááºáá±áá²ááŒá áºáááº-
$ 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
á á¬áááºážááá¬ážáá»á¬ážááᯠá á áºáá±ážááŒáá«á áá¯á·á
$ curl http://localhost:2398/stats
curl- (7) 0.0.0.0 port 2398 ááá¯á· áá»áááºáááºááẠáá¡á±á¬ááºááŒááºáá«- áá»áááºáááºááŸá¯ ááŒááºážáááºááŒááºáž
á
á¬áááºážá¡ááºážáá»á¬áž ááááá¯ááºáá±ážáá«á!..
docker container á ID ááá¯ááŸá¬áá«-
$ docker ps
ááœááºááááºáᬠID IMAGE COMMAND STATUS PORTS á¡áááºáá»á¬ážááᯠáááºáá®ážáá¬ážáááºá
f423c209cfdc telegrammessenger/proxy:latest "/bin/sh -c '/bin/baâŠ" ááœááºáá²á·áá±á¬ áá
áºáá¬áá®ááá·áºá Up áá
áºáááá
áºááá·áº 0.0.0.0:443->443/tcp mtproto-proxy2
áá»áœááºá¯ááºááá¯á·ááẠdocker ááœááºááááºáá¬á¡ááœááºáž áá»áœááºá¯ááºááá¯á·á á ááºážáá¯á¶ážááŸá¬ážáá¬ááºááŒáá·áº ááœá¬ážáááº-
$ sudo docker exec -it f423c209cfdc /bin/bash
$ apt-get update
$ apt-get install nano
$ nano -$ run.sh
"run.sh" script ááá±á¬ááºáá¯á¶ážá á¬ááŒá±á¬ááºážááœááºá áá»á±á¬ááºáá¯á¶ážáá±áá±á¬á¡áá¶ááá¯ááá·áºáá«á
«--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"
"--http-stats" ááᯠááá·áºáá« á€áá²á·ááá¯á·áá±á¬ á¡áá¬ááẠá¡áá¯ááºááŒá áºááá·áºáááº-
«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 (ááááºážáááºáž/ááœááºááẠáá¬ááá¯/á¡ááœáẠááœááºááááºáá¬)á
áá»áœááºá¯ááºááá¯á·á docker container ááᯠááŒááºáááºá áááºáá«á
$ docker restart mtproto-proxy2
á¡áá¬á¡á¬ážáá¯á¶ážá ááᯠá¡áááá·áºáá±ážáááº-
$ curl http://localhost:2398/stats #пПлÑÑаеЌ ПбÑеЌМÑÑ ÑÑаÑОÑÑОкÑ
ááááºážááááºážá
á¬áááºážááá¬ážáá»á¬ážááœáẠ"á¡ááŸáá¯ááº" á¡áá»á¬ážá¡ááŒá¬ážááŸáááẠ(áááºážá 1/3 ááẠá
ááááºáá±á«áºááœááºááŒá
áºáááº)á á¡áááºáá°áá
áºáá¯áááºáá®ážáá«-
$ echo "alias telega='curl localhost:2398/stats | grep -e total_special -e load_average_total'" >> .bashrc && bash
docker ááœááºááááºáá¬ááᯠááœááºááá¯ááºáá²á·áá¬á áá»áááºáááºááŸá¯á¡áá±á¡ááœááºááŸáá·áº áááº-
$ telega
Docker ááœááºááááºáá¬ááẠá¡áá¯ááºáá¯ááºáá±ááŒá®áž á
á¬áááºážááá¬ážáá»á¬áž áááºáááºáá±áá«áááºá
á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá¯á¶ážá áœá²áá²á·áááºá
áááºážá Stuart Redman ááá¯áá² á¡á±ážáá±ážáá²á áááºážáá²á· áá±á¬ááºážáá®ááŸá¬áá±á¬áẠá¡ááŸááºá¡áá¬ážáá áºáᯠáá¬ážáá²á·áá¬á áááºáááºáá±áá±á¬ Docker áá¯ááºáá¯á¶ááẠááŒá®ážáá¬ážáá±á¬ ááŒá±áá¬áá áºáá¯ááᯠáá»ááºáá¬ážáá²á·áááºá
docker áá¯á¶áá»á¬ážá á¡á¬ážáá¬áá»ááºáá»á¬ážááŸáá·áº á¡á¬ážáááºážáá»ááºáá»á¬ážááᯠáá±á¬áºááŒááẠá¡áááá¹áá«ááºáááŸááá«á docker container ááẠVirtualBox áá²á·ááá¯á· "á¡á á áºá¡ááŸááº" virtual machine ááẠá¡áááºážá¡ááŒá áºááá¯áááºážáá±á¬ mini-virtual machine ááŒá áºáááºá ááá¯á·áá±á¬áº áááºážááẠáá¯ááºáá±á¬ááºáá«áááºá
1) docker-image ááááºážááááºážá á¬áááºážááá¬ážáá»á¬ážááŒáá·áº ááá¯á·ááá¯áẠááá«áá²á áá±á¬ááºáááºááŸá áºáŠážááẠááŸá¯ááºááœáá±áá±á¬ ááá¯á·ááá¯áẠáááºáᯠ- á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá°áá®áá±á¬áááºážáááºážááŒáá·áº á¡áá¯á¶ážááŒá¯áááº- CPU t75.micro áá áºáá¯áá¯á¶ážá 2% á áœááºážáá±á¬ááºáááºá
2) áá»áœááºá¯ááºááá¯á·ááẠVPC áá¬áá¬á á á±á¬áá·áºááŒáá·áºááŸá¯ááᯠááŒáá·áºááŸá¯áááº-
VPC ááŸá á¡áááºážá¡ááŒá
áºá¡áá¯á¶ážáá»ááŸá¯ááááºááŸá docker ááœááºááááºáá¬ááẠá
á¯á
á¯áá±á«ááºážá¡áá»á¬ážáá¯á¶ážá ~ 7,5% ááᯠá¡ááŒá²á
á¬ážáá¯á¶ážáááºááᯠáá»áœááºá¯ááºááá¯á·ááœá±á·ááŒááºááá«áááºá CPU á
áœááºážáá±á¬ááºáááºááŸáá·áº áá±á 28 áááºáá±á·ááœáẠáá»áœááºá¯ááºááẠáááºááœááºáá»ááºááŸáááŸá/áá¬áá®áááºááá·áºáá²á·áááºá (ááŸááºáá»áẠ- OpenVPN & pptp áá¬áá¬áá±á«áºááœááºáááºáž áá¯ááºáá±á¬ááºáá±áá«áááºá)
á€áá¬áá¬á¡ááœáẠ10% á¡áááºáááŒáẠCPU á¡áá¯á¶ážááŒá¯ááŸá¯ááẠá¡áááºááŒá±á¬áá·áº ááá·áºáááºáá»ááºááŒá áºááááºážá
Amazon EC2 á០ááá·áºáááºáá»ááºáá»á¬ážááŸááá±á áááºážááá¯á·ááᯠááááºáá áºááŒáá·áº ááœááºáá»ááºáá¬ážáá±á¬ááŒá±á¬áá·áºááŒá áºáááºá
1 CPU ááááºáá
Ạ= áá
áºáááá
áºá¡ááœáẠ1% load ááœáẠá¡áá¯ááºáá¯ááºáá±á¬ CPU 100 áá¯á áá»áœááºá¯ááºááá¯á·ááœáẠááááºáá
Ạ6 áá¯ááŸáááẠ(ááá¯ááá¯áááºááŸá¬ á¡ááœááºá¡ááááºááœááºá 100% CPU á¡áá¯á¶ážáá»ááŸá¯ááẠ6 áááá
áºá¡ááœááºáž ááŒá
áºááá¯ááºáááºá ááá¯á·áá±á¬áẠCPU áá«áá« áá»á±á¬á·áááºážááœá¬ážáááº)á á¡ááŒá¬ážáá±á«ááºážá
ááºááŸá¯áá»á¬áž- á¥ááá¬á 1 CPU ááááºáá
Ạ= 1% load ááœáẠááŸá
áºáááá
áºááŒá¬ á¡áá¯ááºáá¯ááºáá±áá±á¬ CPU 50 áᯠ(ááá¯ááá¯áááºááŸá¬ áá»áœááºá¯ááºááá¯á·ááẠCPU ááᯠ50% load 12 áááá
áºááœáẠáá¯á¶ážááá¯ááºáááº) ááá¯á·ááá¯áẠá¥ááá¬á¡á¬ážááŒáá·áºá á
ááºáááºáááŒáẠ10%-th CPU load áá¬áá¡ááœááºážá áá
áºáá»áááºáá¯á¶áž, etc.
ááœá±á·ááŸááá»ááºáá»á¬áž
- áá»áœááºá¯ááºááá¯á·ááẠ"Digital Resistance" á á¡á áááºá¡ááá¯ááºážááŒá áºáááºá áá¯á¶ááŒááºá áááºáá»ááá±á¬ áááºááœááºáá±ážáááºážááŒá±á¬ááºážáá áºáá¯ááŒáá·áº áááºážááá¯á·á "ááááºáá»á¬ážááŸáá·áº áááááºáá»á¬áž" ááᯠáá¶á·ááá¯ážáá±ážáá²á·áááºá
- á¡áááºá ááá·áºááœáẠMtprotoProxyTelegram ááŸáá·áº OpenVPN ááᯠáá¬áá¬áá±á«áºááœáẠááŒáá·áºáá»ááºáá¬ážáá«áá ááŸá±á¬áá·áºááŸá±ážááŸá¯áá»á¬áž/ pings/ áá»ááŸá¯á¶ážááŸá¯áá»á¬áž ááŸááá±á¬á·áááºááá¯ááºáá«á ááá¯á·áá±á¬áº áááºááẠáááºá t2/micro ááᯠá¡áááºáááŒááºá ááºážáááºáá±áá«á áááºááœááºáá±ážáááááºáá»á¬ážááᯠá á±á¬áá·áºáá«á
- áá»áœááºá¯ááºáááŒááºá ping ááẠ~100-250ms ááŒá áºáááºá á¡áá¶áááºááœááºááŸá¯ááœáẠááŸá±á¬áá·áºááŸá±ážááŸá¯áá»á¬ážáááŸááá«á
- "á€" (VPC á¡áááºážá¡ááŒá áºáá»á¬áž á¡áá«á¡áááº) = 0✠á¡á¬ážáá¯á¶ážá¡ááœáẠááœá±ááŒá±ážáá¯ááºáá»á ááááºá
ááá·áºáá±á¬ááºážáá«ážááᯠááŒááºáááºáá¯á¶ááŸáááºáá«á
UPD- á¡áá¯á¶ážáááºáá±á¬ ááŸááºáá»ááºáá»á¬ážá¡ááœáẠá¡áá»áá¯á· habrausers áá»á¬ážááᯠáá»á±ážáá°ážáááºáá«áááºá á¡ááŸááºááẠááŒá
áºááá¯ááºáááºá (á
á¬áááºážááá¬ážáá»á¬ážááᯠáá¶á·ááá¯ážáá¬ážáá«ááá¬ážá)á ááá¬ážááẠMtproto proxy Telegram docker áá¯á¶á ááá¯ááá¯áá±á¬ááºážááœááºáá±á¬ analogues áá»á¬ážááŸááá«áááºá
source: www.habr.com