рддрдереНрдпрд╛рдЩреНрдХ рд╕рдВрдЧ рдЖрдлреНрдиреЛ MTProxy рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рддреИрдирд╛рддреА

рддрдереНрдпрд╛рдЩреНрдХ рд╕рдВрдЧ рдЖрдлреНрдиреЛ MTProxy рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рддреИрдирд╛рддреА

"рдореИрд▓реЗ рдпреЛ рдЧрдбрдмрдбреА рд╡рд┐рд░рд╛рд╕рддрдорд╛ рдкрд╛рдПрдХреЛ рдЫреБ,
рдирд┐рд░реНрд▓рдЬреНрдЬ Zello рд╕рдВрдЧ рд╕реБрд░реБ; LinkedIn
рд░ рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ "рдЕрд░реВ рд╕рдмреИ" рд╕рдБрдЧ рд╕рдорд╛рдкреНрдд рд╣реБрдиреНрдЫ
рдореЗрд░реЛ рд╕рдВрд╕рд╛рд░рдорд╛ред

рдЕрдирд┐ рд╣рд┐рдЪрдХреА,
рдЕрдзрд┐рдХрд╛рд░реАрд▓реЗ рд╣рддрд╛рд░ рд░ рдареВрд▓реЛ рд╕реНрд╡рд░рдорд╛ рдердкреЗ:
рддрд░ рдо рдЪреАрдЬрд╣рд░реВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЧрд░реНрдиреЗрдЫреБ (рдпрд╣рд╛рдБ рдЖрдИрдЯреАрдорд╛)"
(...).

Durov, рд╕рд╣реА рд░реВрдкрдорд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдЧрд░реНрджрдЫ рдХрд┐ рдпреЛ рдЕрдзрд┐рдирд╛рдпрдХрд╡рд╛рджреА рд░рд╛рдЬреНрдпрд╣рд░реВ рд╣реЛ рдЬреБрди рдЙрд╣рд╛рдБрд╕рдБрдЧ рдбрд░рд╛рдЙрдиреБ рдкрд░реНрдЫ, рдПрдХ рд╕рд╛рдЗрдлрд░рдкрдВрдХ, рд░ Roskomnadzor рд░ рддрд┐рдиреАрд╣рд░реВрдХреЛ DPI рдлрд┐рд▓реНрдЯрд░рд╣рд░реВрдХреЛ рд╕рд╛рде рд╕реБрдирдХреЛ рдврд╛рд▓рд▓реЗ рд╡рд╛рд╕реНрддрд╡рдорд╛ рдЙрд╕рд▓рд╛рдИ рдЪрд┐рдиреНрддрд╛ рдЧрд░реНрджреИрдиред
(рд░рд╛рдЬрдиреАрддрд┐рдХ рдкреНрд░рд╡рд┐рдзрд┐)

рдореЗрд░реЛ рдкреНрд░рд╛рд╡рд┐рдзрд┐рдХ рдиреАрддрд┐ рд╕рд░рд▓ рдЫ, рдо рдпрд╣рд╛рдБ RuNet рдорд╛ рд▓рд╛рдкрд░рд╡рд╛рд╣ рдЕрд╡рд░реБрджреНрдзрдорд╛ рдореЗрд░реЛ рд╡рд┐рдЪрд╛рд░рд╣рд░реВ рд╡рд░реНрдгрди рдЧрд░реНрди рд╕рдХреНрдЫреБ, рддрд░ рдорд▓рд╛рдИ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдЫ рдХрд┐ рдЖрдзреБрдирд┐рдХ рд░реВрд╕реА рд░ Habr рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рдХрд╛ рдкреНрд░рдЧрддрд┐рд╢реАрд▓ рдирд╛рдЧрд░рд┐рдХрд╣рд░реВрд▓реЗ рдЖрдлреНрдиреЛ рдЫрд╛рд▓рд╛рдорд╛ рд╡рд░реНрддрдорд╛рди рд╕рд░рдХрд╛рд░рдХреЛ рдЕрд╡реНрдпрд╡рд╕рд╛рдпрд┐рдХрддрд╛ рдорд╣рд╕реБрд╕ рдЧрд░реЗрдХрд╛ рдЫрдиреН, рддреНрдпрд╕реИрд▓реЗ рдо рдЖрдлреВрд▓рд╛рдИ рд╕реАрдорд┐рдд рдЧрд░реНрдиреЗрдЫреБред рдПрдХрд▓ рд╡рд╛рдХреНрдпрд╛рдВрд╢: рд╣рд╛рдореНрд░реЛ рдкреНрд░рд╛рд╡рд┐рдзрд┐рдХ рдиреАрддрд┐ "рдбрд┐рдЬрд┐рдЯрд▓ рдкреНрд░рддрд┐рд░реЛрдз" рд╣реЛред "рд╕реНрдерд╛рдпреА рд╕рдЮреНрдЪрд╛рд░ рдЪреНрдпрд╛рдирд▓рдХреЛ рд╕рд╛рде рдЖрдлрдиреНрдд рд░ рд╕рд╛рдереАрд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрджреИред"

MTProto рдкреНрд░реЛрдХреНрд╕реА рдЯреЗрд▓реАрдЧреНрд░рд╛рдо рддреИрдирд╛рдд рдЧрд░реНрджреИ

  • рдЬрдЯрд┐рд▓рддрд╛ рдХреЛ рдкреНрд░рд╛рд╡рд┐рдзрд┐рдХ рд╕реНрддрд░ "рд╕рдЬрд┐рд▓реЛ" рдЫ, рдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, рддрдкрд╛рдЗрдБ рдпреЛ рдзреЛрдЦрд╛ рдкрд╛рдирд╛ рдкрдЫреНрдпрд╛рдЙрдиреБрд╣реЛрд╕реНред
  • рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рд╕реНрддрд░ "рдФрд╕рдд рднрдиреНрджрд╛ рдорд╛рдерд┐" рд╣реЛ: рдбрдХрд░ рдЫрд╡рд┐ рд╕реНрдерд┐рд░ рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ, рдпрд╕рд▓рд╛рдИ рд╣рд░реЗрдХ рджрд┐рди рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫреИрди, рдЬрд╕реНрддреИ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдЙрдиреАрд╣рд░реВрдХреЛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рдХрд╛рдЧрдЬрд╛рддрдорд╛ рд▓реЗрдЦреЗрдХрд╛ рдерд┐рдП, рддрд░ рдХрдиреНрдЯреЗрдирд░рдорд╛ рдХреЗрд╣реА рдХрдордЬреЛрд░реАрд╣рд░реВ рдЫрдиреНред
  • рдкреНрд░рддрд┐рд░реЛрдз/рдЪрд┐рдиреНрддрд╛рдХреЛ рд╕реНрддрд░ - 10 ISIS рд╕рджрд╕реНрдпрд╣рд░реВрд▓реЗ рдЖрдлреНрдиреЛ рд╖рдбреНрдпрдиреНрддреНрд░ рдмреБрдирд┐рд░рд╣реЗрдХрд╛ рдЫрдиреН "рдЖрдлрдиреНрддрд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧ", рдкреНрд░рддрд┐рдмрдиреНрдз RKN рдмрд╛рдЯ рдПрдХ рдкрдЯрдХ рдкрдирд┐ рдЖрдПрдХреЛ рдЫреИрди (рд╡рд╕рдиреНрдд рджреЗрдЦрд┐)ред
  • рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╕реНрддрд░ "рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдмрдЪреНрдЪрд╛ рдЕрд╡рд┐рд╢реНрд╡рд╛рд╕" рд╣реЛ, рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖рдорд╛ рдПрдХ рд╕рдорд╕реНрдпрд╛ (рдХреЗрд╣реА рд╕рд╛рдереАрд╣рд░реВ рдореЗрд░реЛ MtprotoProxy рдорд╛ рд╢рдЩреНрдХрд╛рд╕реНрдкрдж рдЫрдиреН)ред
  • рдЯреЗрд╕реНрдЯреЛрд╕реНрдЯреЗрд░реЛрди рд╕реНрддрд░ - "рдЙрдЪреНрдЪ рдкреНрд░рд╛рдкреНрдд рднрдПрдиред"
  • рд╡рд┐рддреНрддреАрдп рд▓рд╛рдЧрдд - "0тВ╜"ред
  • рдЖрд░реНрдерд┐рдХ рдЗрдирд╛рдо - "рдирд╛рдЧрд░рд┐рдХ Durov рдорд╛ рдирд┐рд░реНрднрд░ рдЫреИрдиред" рдкрджреЛрдиреНрдирддрд┐ - рд╡рд┐рдЬреНрдЮрд╛рдкрди рд▓рд╛рдЧреВ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ред

рд╣рд╛рдореА Amazon-ec2: t2.micro рдХреЛ "рдирд┐:рд╢реБрд▓реНрдХ / рд╡реНрдпрдХреНрддрд┐рдЧрдд" рдХреНрд╖рдорддрд╛рд╣рд░реВрдорд╛ рд╣рд╛рдореНрд░реЛ TelegramProxy рдмрдврд╛рдЙрдиреЗрдЫреМрдВред рдореИрд▓реЗ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрдВ рдпреЛ рдХрд╛рд░ред

рдареАрдХ рдЫ, рддрдкрд╛рдЗрдБрдХреЛ рдирд┐: рд╢реБрд▓реНрдХ рд╕рд░реНрднрд░ рдбрд┐рдкреНрд▓реЛрдЗрдпреЛ, рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡реЗрдмрд╕рд╛рдЗрдЯрдорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реН dockerhub рд░ рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рдХреЗрд╣рд┐ рдЫрд╡рд┐, рдлрд╛рдЗрд▓, рд╡рд╛ рдЬрд╛рджреБрдИ рдмрдЯрди рдЦреЛрдЬреНрди рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрди - "рддрд┐рдиреАрд╣рд░реВ рддреНрдпрд╣рд╛рдБ рдЫреИрдирдиреН", рд╕рдмреИ рдЬрд╛рджреБ CLI рдорд╛ рдЧрд░рд┐рдиреНрдЫ:

$ docker pull telegrammessenger/proxy #╨╛╨▒╤А╨░╨╖ ╤Б╨║╨░╤З╨░╨╜.

рддрд░ "рддреНрдпреЛ" рдЕрдШрд┐, CLI рдХреЛ рд▓рд╛рдЧрд┐ рдбрдХрд░ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

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┬╗.

рдпреЛ рдЖрджреЗрд╢ рдкрдЫрд┐, рдЯрд░реНрдорд┐рдирд▓ рдЖрдЙрдЯрдкреБрдЯрдорд╛ рд╣реЗрдХреНрд╕ рд╕реНрдЯреНрд░рд┐рдЩ рджреЗрдЦрд╛ рдкрд░реНрдиреЗрдЫ, рддрд░ рд╣рд╛рдореА рдпрд╕рдорд╛ рд░реБрдЪрд┐ рд░рд╛рдЦреНрджреИрдиреМрдВред

рд╣рд╛рдореА CLI рдорд╛ рд▓реЗрдЦреНрдЫреМрдВ:

$ docker logs mtproto-proxy

рд░ рд╣рд╛рдореАрд▓реЗ рдЖрд╡рд╢реНрдпрдХ рдбрд╛рдЯрд╛ рдкрд╛рдЙрдБрдЫреМрдВ:

рддрдереНрдпрд╛рдЩреНрдХ рд╕рдВрдЧ рдЖрдлреНрдиреЛ MTProxy рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рддреИрдирд╛рддреА
рдпреЛ рд▓рдЧ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдорд╛, рд╣рд╛рдореА рджреЗрдЦрд╛рдЗрдиреНрдЫ (smeared):

рдП) рд╣рд╛рдореНрд░реЛ рд╕рд░реНрднрд░ рдЖрдИрдкреА (рдмрд╛рд╣реНрдп рд╕рд░реНрднрд░ рдЖрдИрдкреА);
B) рд░ рдЕрдирд┐рдпрдорд┐рдд рдЧреЛрдкреНрдп - HEX рдорд╛ рдЕрдирд┐рдпрдорд┐рдд рд╕реНрдЯреНрд░рд┐рдЩред

рд╣рд╛рдореНрд░реЛ MtproProxy рджрд░реНрддрд╛ рдЧрд░реНрдиреБ рдЕрдШрд┐, рддрдкрд╛рдИрдВрд▓реЗ iptables рдорд╛ рдореБрдЦреНрдп рдлрд╛рдпрд░рд╡рд╛рд▓ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ (рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕ VPC рдорд╛ рдЯреНрд░рд╛рдлрд┐рдХрд▓рд╛рдИ рдХрд╕рд░реА рд░рд┐рдбрд┐рд░реЗрдХреНрдЯ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ, рдпреЛ рд╢рд░рд╛рд░рддреА рд╣реБрдиреЗрдЫ, рдХрд┐рдирдХрд┐ Amazon-EC2 рдорд╛ рдореБрдЦреНрдп рдлрд╛рдпрд░рд╡рд╛рд▓ рд╡реЗрдм рдЗрдиреНрдЯрд░рдлреЗрд╕рдорд╛ рдЕрд╡рд╕реНрдерд┐рдд рдЫ рд░ рдпрд╕рдХреЛ рдЙрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдЫред iptables)ред

рд╣рд╛рдореА рдЬрд╛рдиреНрдЫреМрдВ "рдХрдиреНрд╕реЛрд▓ Amazon-EC2" рд╕реБрд░рдХреНрд╖рд╛ рд╕рдореВрд╣рдорд╛ рд░ рдЦреБрд▓рд╛ рдЖрдЧрдорди рдкреЛрд░реНрдЯ 443 (рддрд╛рд░реНрдХрд┐рдХ рдорд╛рд╕реНрдХрд┐рдЩ рдпрд╛рддрд╛рдпрд╛рдд рдкрд╣рд┐рд▓реЛ рдкрдЯрдХ)ред

рддрдереНрдпрд╛рдЩреНрдХ рд╕рдВрдЧ рдЖрдлреНрдиреЛ MTProxy рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рддреИрдирд╛рддреА

рд╣рд╛рдореА рд▓рдЧрдмрд╛рдЯ рд╣рд╛рдореНрд░реЛ "рдЖрдИрдкреА рд░ рдЧреЛрдкреНрдп" рдбреЗрдЯрд╛ рд▓рд┐рдиреНрдЫреМрдВ рд░ рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рдореЗрд╕реЗрдиреНрдЬрд░рдорд╛ рдЬрд╛рдиреНрдЫреМрдВ, рдЖрдзрд┐рдХрд╛рд░рд┐рдХ MTProxy Admin Bot (@MTProxybot) рдлреЗрд▓рд╛ рдкрд╛рд░реНрдЫреМрдВ рд░ рд╣рд╛рдореНрд░реЛ MtproProxy рджрд░реНрддрд╛ рдЧрд░реНрдЫреМрдВ: [/newproxy] рдЖрджреЗрд╢ рдЪрд▓рд╛рдЙрдиреБрд╣реЛрд╕реН рд░ [our_ip:443] рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рд░ рддреНрдпрд╕рдкрдЫрд┐ рд╣рд╛рдореНрд░реЛ [secret /HEX]ред

рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдбрд╛рдЯрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯ рдЧрд░реНрджрд╛ рдЧрдбрдмрдб рдЧрд░реНрдиреБрднрдпреЛ рднрдиреЗ, рдмреЛрдЯ рдХреНрд░реЛрдзрд┐рдд рд╣реБрдиреЗрдЫ рд░ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдкрдард╛рдЙрдиреЗрдЫ ...

рдпрджрд┐ рддрдкрд╛рдЗрдБ рддреНрд░реБрдЯрд┐ рдмрд┐рдирд╛ рджреБрдИ рд▓рд╛рдЗрдирд╣рд░реВ рднрд░реНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдЗрдБ рддрдкрд╛рдЗрдБрдХреЛ рд╣рд╛рд▓рдХреЛ MtprotoProxyTelegram рдХреЛ рд▓рд╛рдЧреА рдЕрдиреБрдореЛрджрди рд░ рдПрдХ рдХрд╛рд░реНрдп рд▓рд┐рдЩреНрдХ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреБрд╣реБрдиреЗрдЫ, рдЬреБрди рддрдкрд╛рдЗрдБ рдЬреЛ рдХреЛрд╣реА рд╕рдВрдЧ рд╕рд╛рдЭрд╛ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рддрдереНрдпрд╛рдЩреНрдХ рд╕рдВрдЧ рдЖрдлреНрдиреЛ MTProxy рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рддреИрдирд╛рддреА

рд╕рд╛рдереИ, рдпрд╕ рдмреЛрдЯ рдорд╛рд░реНрдлрдд, рддрдкрд╛рдЗрдБ рддрдкрд╛рдЗрдБрдХреЛ рдкреНрд░рд╛рдпреЛрдЬрди рдЪреНрдпрд╛рдирд▓ (рддрд░ рдЪреНрдпрд╛рдЯ рд╣реЛрдЗрди) рдердкреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдЬрд╣рд╛рдБ рддрдкрд╛рдЗрдБ рддрдкрд╛рдЗрдБрдХреЛ рд╕рд░реНрднрд░рдорд╛ рдЬрдбрд╛рди рднрдПрдХрд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдорд╛ рддрдкрд╛рдЗрдБрдХреЛ рд╡рд┐рдЪрд╛рд░рд╣рд░реВ рдереЛрдкрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд╡рд╛ рддрдкрд╛рдЗрдБ "рд╕реНрдкреНрдпрд╛рдо" рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрди рд░ рддрдкрд╛рдЗрдБрдХреЛ рд╕рдореНрднрд╛рд╡рд┐рдд рдЧреНрд░рд╛рд╣рдХрд╣рд░реВ рдмрд┐рдирд╛ рдкрд░реЗрд╢рд╛рди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдиред рдкрд┐рди рдЧрд░рд┐рдПрдХреЛ рдореЗрд╕реЗрдиреНрдЬрд░ рд╕реВрдЪреАрдорд╛ рдЪреНрдпрд╛рдирд▓ рджреЗрдЦрд╛рдЙрдБрджреИред

рдмреЛрдЯ рдмрд╛рд░реЗ рдХреЗрд╣рд┐ рдердк рд╢рдмреНрджрд╣рд░реВ, рдЬрд╣рд╛рдБ рддрдкрд╛рдЗрдБ рддрдереНрдпрд╛рдЩреНрдХрд╣рд░реВ рдЕрдиреБрд░реЛрдз рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддрд░ "рдбреЛрдирдЯ рдкрдирд┐"ред рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛, "рдЖрдВрдХрдбрд╛" рдЙрдкрд▓рдмреНрдз рдЫ рдЬрдм рддрдкрд╛рдИрдВ рдорд╛рдЦрдЪрдХрд▓рд╛ рдкрдЫрд┐ "рдлреНрд░реАрд▓реЛрдбрд░рд╣рд░реВрдХреЛ рднреАрдб" рд╣реБрдиреНрдЫред

рдирд┐рдЧрд░рд╛рдиреА рдЧрд░реНрджреИ

рд╣рд╛рдореА рдХрддрд┐ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВ рд╣рд╛рдореНрд░реЛ рд╕рд░реНрднрд░рдорд╛ рдЬрдбрд╛рди рдЧрд░реНрди рд╕рдХреНрдЫреМрдВ? рд░ рдЬреЗ рднрдП рдкрдирд┐, рддреНрдпрд╣рд╛рдБ рдХреЛ / рдХреЗ рдЫ? рдХреЗ? рдЕрдирд┐ рдХрддрд┐ ?

рд╣рд╛рдореА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдХрд╛рдЧрдЬрд╛рдд рдЕрдиреБрд╕рд╛рд░ рддреНрдпрд╣рд╛рдБ рдХреЗ рдЫ рд╣реЗрд░реНрдЫреМрдВ ... рд╣реЛ, рдпрд╣рд╛рдБ, рдпрд╕рд▓рд╛рдИ рдпрд╕рд░реА рдЧрд░реНрдиреБрд╣реЛрд╕реН:

$ curl http://localhost:2398/stats ╨╕╨╗╨╕ ╨▓╨╛╤В ╤В╨░╨║ $ docker exec mtproto-proxy curl http://localhost:2398/stats # ╨╕ ╨╜╨░╨╝ ╨▓╤Л╨┤╨░╨┤╤Г╤В ╤Б╤В╨░╤В╨╕╤Б╤В╨╕╨║╤Г ╨┐╤А╤П╨╝╨╛ ╨▓ CLI.

"рддрдкрд╛рдИрдВрдХреЛ рдЬреЗрдм рдлрд░рд╛рдХрд┐рд▓реЛ рд░рд╛рдЦреНрдиреБрд╣реЛрд╕реН" рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдЖрджреЗрд╢рд╣рд░реВ рдЕрдиреБрд╕рд╛рд░, рд╣рд╛рдореА рд╕рдзреИрдВ рдпрд╕реНрддреИ рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗрдЫреМрдВ:

┬лрдХрд░реНрд▓: (7) рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ рдкреЛрд░реНрдЯ 2398 рдорд╛ рдЬрдбрд╛рди рдЧрд░реНрди рдЕрд╕рдлрд▓: рдЬрдбрд╛рди рдЕрд╕реНрд╡реАрдХрд╛рд░ рдЧрд░рд┐рдпреЛ┬╗

рд╣рд╛рдореНрд░реЛ рдкреНрд░реЛрдХреНрд╕реАрд▓реЗ рдХрд╛рдо рдЧрд░реНрдиреЗрдЫред рддрд░! Bagel, рддрдереНрдпрд╛рдЩреНрдХ рд╣рд╛рдореА рдкреНрд░рд╛рдкреНрдд рдЫреИрдиред

рддрдкрд╛рдИрдВ рд░рд╛рддреЛ рдЖрдБрдЦрд╛рдХрд╛ рд▓рд╛рдЧрд┐ рдЪреАрдЬрд╣рд░реВ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ: рдЬрд╛рдБрдЪ рдЧрд░реНрдиреБрд╣реЛрд╕реН

$ netstat -an | grep 2398 ╨╕...

рд╕реБрд░реБрдорд╛ рдореИрд▓реЗ рд╕реЛрдЪреЗ рдХрд┐ рдпреЛ рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рдкрдЫрд╛рдбрд┐ рдЕрд░реНрдХреЛ рдЬрд╛рдо рд╣реЛ (рд░ рдо рдЕрдЭреИ рдкрдирд┐ рд╕реЛрдЪреНрдЫреБ), рддреНрдпрд╕рдкрдЫрд┐ рдореИрд▓реЗ рдЕрд╕реНрдерд╛рдпреА рд░рд╛рдореНрд░реЛ рд╕рдорд╛рдзрд╛рди рдлреЗрд▓рд╛ рдкрд╛рд░реЗ: рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░рд▓рд╛рдИ рдлрд╛рдЗрд▓рдХреЛ рд╕рд╛рде рдкреЛрд▓рд┐рд╢ рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рдкрдЫрд┐, рдПрдХ рдЗрдиреНрдлрд╛рд▓реЗ рдореЗрд░реЛ рдЖрдБрдЦрд╛ рд╕рдорд╛рддреНрдпреЛ:

"рд╕рд╛рдВрдЦреНрдпрд┐рдХреА" рд╡рд░рд┐рдкрд░рд┐ Roskomnadzor рдХреЛ рд░рд╛рдЬреНрдп рдиреГрддреНрдп рдмрд╛рд░реЗред

"рд╣рд╛рдореАрд▓реЗ рдлрд╛рдпрд░рд╣реЛрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рдбрд╛рдЯрд╛рдмреЗрд╕ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╣рд╛рдореНрд░рд╛ рд╕рд░реНрднрд░рд╣рд░реВрдорд╛ рдХреЗрд╣реА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреНрд░реЛрдХреНрд╕реАрд╣рд░реВ рдмреНрд▓рдХ рдЧрд░реЗрдХрд╛ рдЫреМрдВред рдпрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛рд▓реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреНрд░реЛрдХреНрд╕реАрд╣рд░реВрд╕рдБрдЧ рд╕реВрдЪреАрд╣рд░реВ рдирд┐рдЧрд░рд╛рдиреА рдЧрд░реНрджрдЫ рд░ рддрд┐рдиреАрд╣рд░реВрд╕рдБрдЧ рдбрд╛рдЯрд╛рдмреЗрд╕ рдмрдирд╛рдЙрдБрдЫред

рддреНрдпреЛ рдХреНрд╖рдг рджреЗрдЦрд┐ (рдЕрд░реНрдерд╛рдд, рд▓рдЧрднрдЧ рджреБрдИ рджрд┐рди рдкрд╣рд┐рд▓реЗ рдиреИ), рд╣рд╛рдореНрд░реЛ рд░реВрд╕реА рдкреНрд░реЛрдХреНрд╕реА рдХреЛ рдПрдХ рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛ рдЕрд╡рд░реБрджреНрдз рдЧрд░рд┐рдПрдХреЛ рдЫреИрдиред

3. рд╣рд╛рдореА рддрдкрд╛рдЗрдБрд▓рд╛рдИ рд░реЛрд╕реНрдХреЛрдореНрдирд╛рдбрдЬреЛрд░рдХреЛ рд▓рд╛рдЧрд┐ рд▓рдЧрднрдЧ рдЕрднреЗрджреНрдп рдкреНрд░реЛрдХреНрд╕реА рдХрд╕рд░реА рдмрдирд╛рдЙрдиреЗ рд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреНрд░реЛрдХреНрд╕реАрд╣рд░реВ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд╛рдЭрд╛ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдмрддрд╛рдЙрдБрдЫреМрдВред

- рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдгрдорд╛ MTProto рдкреНрд░реЛрдХреНрд╕реА рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░ (рд╡рд╛ рдбреЗрдорди) рдЕрдкрдбреЗрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН: RKN рд▓реЗ рддрдереНрдпрд╛рдЩреНрдХ рдкреЛрд░реНрдЯ рджреНрд╡рд╛рд░рд╛ рдкреБрд░рд╛рдиреЛ рд╕рдВрд╕реНрдХрд░рдгрд╣рд░реВ рдЧрдгрдирд╛ рдЧрд░реНрджрдЫ, рдЬреБрди 0.0.0.0 рдорд╛ рдмрд╛рдБрдзрд┐рдПрдХреЛ рдерд┐рдпреЛ рд░ рд╕рдореНрдкреВрд░реНрдг рдЗрдиреНрдЯрд░рдиреЗрдЯрдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд░реВрдкрдорд╛ рдкрд╣рд┐рдЪрд╛рди рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред рдЕрдЭ рд░рд╛рдореНрд░реЛ, iptables рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдЖрд╡рд╢реНрдпрдХ рдкреЛрд░реНрдЯрд╣рд░реВ рдЦреЛрд▓реНрдиреБрд╣реЛрд╕реН, рд░ рдмрд╛рдБрдХреА рдмрдиреНрдж рдЧрд░реНрдиреБрд╣реЛрд╕реН (рдпрд╛рдж рдЧрд░реНрдиреБрд╣реЛрд╕реН рдХрд┐ рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░рдХреЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рддрдкрд╛рдИрдВрд▓реЗ FORWARD рдирд┐рдпрдо рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрдкрд░реНрдЫ)ред

тАФ Roskomnadzor рд▓реЗ рдзреЗрд░реИ рдкрд╣рд┐рд▓реЗ рдЯреНрд░рд╛рдлрд┐рдХ рдХрд╕рд░реА рдбрдореНрдк рдЧрд░реНрдиреЗ рднрдиреЗрд░ рд╕рд┐рдХреЗрдХрд╛ рдерд┐рдП: рддрд┐рдиреАрд╣рд░реВрд▓реЗ HTTP рд░ SOCKS5 рдкреНрд░реЛрдХреНрд╕реАрд╣рд░реВ рднрд┐рддреНрд░ рдХрд▓рд╣рд░реВ рджреЗрдЦреНрдЫрдиреН, рд░ рддрд┐рдиреАрд╣рд░реВрд▓реЗ MTProto рдкреНрд░реЛрдХреНрд╕реА рдЕрд╕реНрдкрд╖реНрдЯрддрд╛рдХреЛ рдкреБрд░рд╛рдиреЛ рд╕рдВрд╕реНрдХрд░рдг рдкрдирд┐ рджреЗрдЦреНрдЫрдиреНред

рдЬрдм рддреНрдпрд╕реНрддрд╛ рдбрдореНрдкрд╣рд░реВ рд╕реНрдерд╛рдкрдирд╛ рднрдПрдХрд╛ рдХреЗрд╣реА рдкреНрд░рджрд╛рдпрдХрдХрд╛ рдЧреНрд░рд╛рд╣рдХрд╣рд░реВрд▓реЗ рддреНрдпрд╕реНрддрд╛ рдкреНрд░реЛрдХреНрд╕реАрд╣рд░реВ рдорд╛рд░реНрдлрдд рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рдкрд╣реБрдБрдЪ рдЧрд░реНрдЫрдиреН, RKN рд▓реЗ рддреНрдпрд╕реНрддрд╛ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рджреЗрдЦреНрдЫ рд░ рддреБрд░реБрдиреНрддреИ рдпреА рдкреНрд░реЛрдХреНрд╕реАрд╣рд░реВрд▓рд╛рдИ рд░реЛрдХреНрдЫред рдкреБрд░рд╛рдиреЛ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛ рд╕рдВрдЧ MTProto рдкреНрд░реЛрдХреНрд╕реА рдХреЛ рд▓рд╛рдЧреА рдЙрд╣реА рдЬрд╛рдиреНрдЫред

рд╕рдорд╛рдзрд╛рди: рдкреНрд░реЛрдХреНрд╕реАрдорд╛ рдЬрдбрд╛рди рд╣реБрдиреЗ рдЧреНрд░рд╛рд╣рдХрд╣рд░реВрд▓рд╛рдИ рд╕реБрд░реБрдорд╛ dd рдорд╛рд░реНрдлрдд рдорд╛рддреНрд░ рдЧреЛрдкреНрдп рд╡рд┐рддрд░рдг рдЧрд░реНрдиреБрд╣реЛрд╕реН (mtproto proxy рдХреЛ рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдорд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдХреНрд╖рд░рд╣рд░реВ dd рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫреИрди)ред рдпрд╕рд▓реЗ рдбрдореНрдкрд╛рдЗрд▓рд╣рд░реВрд▓реЗ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрди рдирд╕рдХреНрдиреЗ рдЕрд╕реНрдкрд╖реНрдЯрддрд╛рдХреЛ рд╕рдВрд╕реНрдХрд░рдг рд╕рдХреНрд╖рдо рдкрд╛рд░реНрдиреЗрдЫред

рд░ рдХреБрдиреИ HTTP рд╡рд╛ SOCKS5 рдкреНрд░реЛрдХреНрд╕реАрд╣рд░реВ рдЫреИрдирдиреНред

- рд╕рдорд╛рдпреЛрдЬрди, рдЬрд╕рдХреЛ рдорджреНрджрддрд▓реЗ рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рдкреНрд░реЛрдХреНрд╕реАрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдорд╛рд▓рд┐рдХ, рдЬрд╕рд▓рд╛рдИ RKN рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдорд┐рдд рд░реВрдкрдорд╛ рдкреНрд░рддрд┐рдмрдиреНрдз рд▓рдЧрд╛рдЗрдПрдХреЛ рдЫ, рдкреВрд░реНрдг рд░реВрдкрдорд╛ (рд╡рд╛ рд▓рдЧрднрдЧ рдкреВрд░реНрдг рд░реВрдкрдорд╛) рдЕрд╡рд░реБрджреНрдз рдЧрд░реНрди рд░реЛрдХреНрди рд╕рдХреНрдЫ (рд░ рдПрдХреИ рд╕рдордпрдорд╛ RKN рдЭреВрдЯ рдмреЛрд▓рд┐рд░рд╣реЗрдХреЛ рдЫ рднрдиреЗрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрдиреБрд╣реЛрд╕реН)ред

рдПрдЙрдЯрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬрд╕рд▓реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреНрд░реЛрдХреНрд╕реАрд╣рд░реВ рдкреНрд░рддрд┐рдмрдиреНрдзрд┐рдд рдЧрд░реНрджрдЫ рд░ рдпрд╕рдХреЛ рд▓рд╛рдЧрд┐ рдПрдЙрдЯрд╛ рд╕рд╛рдиреЛ рдореНрдпрд╛рдиреБрдЕрд▓ред

тЖТ рд╕реНрд░реЛрдд

рд╣рд╛рдореНрд░реЛ рдкреНрд░реЛрдХреНрд╕реА-рдкрд╢реНрдЪрд┐рдореА рд╣реЛ, рдореИрд▓реЗ рд╡рд╕рдиреНрдд рд░ рдЪрд┐рд╕реЛ рдЧрд░реНрдореАрдХрд╛ рджрд┐рдирд╣рд░реВрдорд╛ рдХреБрдиреИ рдкрдирд┐ рд╕рдорд╕реНрдпрд╛ / рдЕрд╡рд░реЛрдзрд╣рд░реВ рд╕рд╛рдордирд╛ рдЧрд░реЗрди, рдпрд╕рд▓реЗ рд░рдЪрдирд╛рддреНрдордХ рдХрд╛рд░реНрдпрд▓рд╛рдИ рдкрдирд┐ рдЖрдХрд░реНрд╖рд┐рдд рдЧрд░реНрди рд╕рдХреЗрди, рддреНрдпрд╕реИрд▓реЗ рдореИрд▓реЗ рдЧрддрд┐ рдЧреБрдорд╛рдЗрди рд░ рдпрд╕рдорд╛ dd* рдЙрдкрд╕рд░реНрдЧ рдердкрд┐рдиред рд╕рд╛рдБрдЪреЛред

MtprotoProxyTelegram рдХреЛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдирд┐рд░реНрджреЗрд╢рди рдЕрдиреБрд╕рд╛рд░ рдореНрдпрд╛рдиреБрдЕрд▓ "рдкреНрд░рд╛рдкреНрдд рддрдереНрдпрд╛рдЩреНрдХ / рдирд┐рдЧрд░рд╛рдиреА" рдХрд╛рдо рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫреИрди / рдкреБрд░рд╛рдиреЛ, рддрдкрд╛рдИрдВрд▓реЗ рдбрдХрд░ рдЫрд╡рд┐ рдорд░реНрдордд рдЧрд░реНрдиреБрдкрд░реНрдиреЗрдЫред

рд╣рд╛рдореА рдпрд╕рд▓рд╛рдИ рдареАрдХ рдЧрд░реНрдЫреМрдВред

рдХрдиреНрдЯреЗрдирд░ рдЕрдЭреИ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдЫ:

$ 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

рдХрд░реНрд▓: (7) 0.0.0.0 рдкреЛрд░реНрдЯ 2398 рдорд╛ рдЬрдбрд╛рди рдЧрд░реНрди рдЕрд╕рдлрд▓: рдЬрдбрд╛рди рдЕрд╕реНрд╡реАрдХрд╛рд░ рдЧрд░рд┐рдпреЛ
рддрдереНрдпрд╛рдЩреНрдХ рдЕрдЭреИ рдЙрдкрд▓рдмреНрдз рдЫреИрди..!

рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░рдХреЛ рдЖрдИрдбреА рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрдиреБрд╣реЛрд╕реН:

$ docker ps

рдХрдиреНрдЯреЗрдирд░ рдЖрдИрдбреА рдЫрд╡рд┐ рдХрдорд╛рдгреНрдбрд▓реЗ рд╕реНрдерд┐рддрд┐ рдкреЛрд░реНрдЯ рдирд╛рдорд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдпреЛ
f423c209cfdc telegrammessenger/proxy:latest "/bin/sh -c '/bin/baтАж" рд▓рдЧрднрдЧ рдПрдХ рдШрдгреНрдЯрд╛ рдкрд╣рд┐рд▓реЗ рдорд╛рдерд┐ рд▓рдЧрднрдЧ рдПрдХ рдорд┐рдиреЗрдЯ 0.0.0.0:443->443/tcp mtproto-proxy2

рд╣рд╛рдореА рд╣рд╛рдореНрд░реЛ рдЪрд╛рд░реНрдЯрд░ рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░ рднрд┐рддреНрд░ рдЬрд╛рдиреНрдЫреМрдВ:

$ sudo docker exec -it f423c209cfdc /bin/bash

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

рд░ "run.sh" рд╕реНрдХреНрд░рд┐рдкреНрдЯрдХреЛ рдЕрдиреНрддрд┐рдо рдкрдЩреНрдХреНрддрд┐рдорд╛, рдЫреБрдЯреЗрдХреЛ рдЭрдгреНрдбрд╛ рдердкреНрдиреБрд╣реЛрд╕реН:

┬л--http- рддрдереНрдпрд╛рдЩреНрдХ┬╗
"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 restart mtproto-proxy2

рд╕рдмреИ рдХреБрд░рд╛, рдЕрдм рдЖрджреЗрд╢ рдорд╛:

$ curl http://localhost:2398/stats #╨┐╨╛╨╗╤Г╤З╨░╨╡╨╝ ╨╛╨▒╤К╨╡╨╝╨╜╤Г╤О ╤Б╤В╨░╤В╨╕╤Б╤В╨╕╨║╤Г

рддрдереНрдпрд╛рдЩреНрдХ рд╕рдВрдЧ рдЖрдлреНрдиреЛ MTProxy рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рддреИрдирд╛рддреА
рддрдереНрдпрд╛рдЩреНрдХрд╣рд░реВрдорд╛ рдзреЗрд░реИ "рдлреЛрд╣реЛрд░" рдЫ (рдпрд╕рдХреЛ 1/3 рд╕реНрдХреНрд░рд┐рдирдорд╛ рдЫ), рдПрдЙрдЯрд╛ рдЙрдкрдирд╛рдо рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

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

рд╣рд╛рдореАрд▓реЗ рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░рд▓рд╛рдИ рдХреЗрдХреЛ рд▓рд╛рдЧрд┐ рдкрд╛рд▓рд┐рд╢ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ рдкрд╛рдЙрдБрдЫреМрдВ: рдЬрдбрд╛рдирд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рд░ рд▓реЛрдб:

$ telega

рддрдереНрдпрд╛рдЩреНрдХ рд╕рдВрдЧ рдЖрдлреНрдиреЛ MTProxy рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рддреИрдирд╛рддреА
рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдЫ, рддрдереНрдпрд╛рдЩреНрдХрд╣рд░реВ рдШреБрдорд┐рд░рд╣реЗрдХрд╛ рдЫрдиреНред

рд╕реНрд░реЛрддрд╕рд╛рдзрди рдЦрд░реНрдЪ рднрдПрдХреЛ рдЫ

рддрдкрд╛рдИрдВ рд╕реНрдЯреБрдЕрд░реНрдЯ рд░реЗрдбрдореНрдпрд╛рди рдЬрддреНрддрд┐рдХреИ рд░рд╛рдореНрд░реЛ рд╣реБрдиреБрд╣реБрдиреНрдЫ, рддрдкрд╛рдИрдВрд▓реЗ рдЖрдлреНрдиреЛ рдкреНрдпрд╛рдиреНрдЯреАрдорд╛ рдЫрд╛рдк рдЫреЛрдбреНрдиреБрд╣реБрдиреНрдЫред рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдбрдХрд░ рдЫрд╡рд┐рд▓реЗ рдареВрд▓реЛ рдкрджрдЪрд┐рд╣реНрди рдЫреЛрдбреНрдЫред

рдбрдХрд░ рдЫрд╡рд┐рд╣рд░реВрдХреЛ рдлрд╛рдЗрджрд╛ рд░ рдмреЗрдлрд╛рдЗрджрд╛рд╣рд░реВ рд╡рд░реНрдгрди рдЧрд░реНрди рдпрд╕рд▓реЗ рдХреБрдиреИ рдЕрд░реНрде рд░рд╛рдЦреНрджреИрди, рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░ рдПрдХ рдорд┐рдиреА-рднрд░реНрдЪреБрдЕрд▓ рдореЗрд╕рд┐рди рд╣реЛ рдЬрд╕рд▓реЗ "рд╡рд╛рд╕реНрддрд╡рд┐рдХ" рднрд░реНрдЪреБрдЕрд▓ рдореЗрд╕рд┐рди рднрдиреНрджрд╛ рдХрдо рд╕реНрд░реЛрддрд╣рд░реВ рдЦрдкрдд рдЧрд░реНрджрдЫ, рдЬрд╕реНрддреИ VirtualBox, рддрд░ рдпрд╕рд▓реЗ рдЧрд░реНрдЫред

1) рдбрдХрд░-рдЫрд╡рд┐ рддрдереНрдпрд╛рдЩреНрдХрдХреЛ рд╕рд╛рде рд╡рд╛ рдмрд┐рдирд╛ рд╕реБрд░реБ рдЧрд░рд┐рдПрдХреЛ, рджреБрдИ рдХреНрд▓рд╛рдЗрдиреНрдЯрд╣рд░реВ рдлреНрд░реЛрд▓рд┐рдХ рд╡рд╛ рджрд╕ - рд╕реНрд░реЛрддрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ ~ рдЙрд╕реНрддреИ рддрд░рд┐рдХрд╛рд▓реЗ: рд╕рдореНрдкреВрд░реНрдг CPU t75.micro рдкреНрд░рджрд░реНрд╢рдирдХреЛ 2%ред

2) рд╣рд╛рдореА VPC рд╕рд░реНрднрд░рдХреЛ рдЕрдиреБрдЧрдорди рд╣реЗрд░реНрдЫреМрдВ:

рддрдереНрдпрд╛рдЩреНрдХ рд╕рдВрдЧ рдЖрдлреНрдиреЛ MTProxy рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рддреИрдирд╛рддреА

VPC рдорд╛ рд╕рдВрд╕рд╛рдзрди рдЙрдкрдпреЛрдЧ рдЧреНрд░рд╛рдлрдмрд╛рдЯ, рд╣рд╛рдореА рджреЗрдЦреНрдЫреМрдВ рдХрд┐ рдбрдХрд░ рдХрдиреНрдЯреЗрдирд░рд▓реЗ рдХреБрд▓ рдЕрдзрд┐рдХрддрдордХреЛ ~ 7,5% рд▓рдЧрд╛рддрд╛рд░ рдЦрдкрдд рдЧрд░реНрдЫред CPU рдкреНрд░рджрд░реНрд╢рди рд░ рдореЗ 28 рдорд╛ рдо рджреНрд╡рд╛рд░рд╛ рдЬрд╛рдирд╛рдЬрд╛рдиреА / рдЕрд╕реНрдерд╛рдпреА рд░реВрдкрдорд╛ рд░реЛрдХрд┐рдПрдХреЛ рдерд┐рдпреЛ (рдиреЛрдЯ - OpenVPN рд░ pptp рдкрдирд┐ рд╕рд░реНрднрд░рдорд╛ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдЫ)ред

рдХрд┐рди 10% рд╕реНрдерд┐рд░ CPU рдЙрдкрдпреЛрдЧ рдпреЛ рд╕рд░реНрднрд░рдХреЛ рд▓рд╛рдЧрд┐ рд╕реАрдорд╛ рд╣реЛ?

рдХрд┐рдирднрдиреЗ рддреНрдпрд╣рд╛рдБ Amazon EC2 рдмрд╛рдЯ рдкреНрд░рддрд┐рдмрдиреНрдзрд╣рд░реВ рдЫрдиреН рд░ рддрд┐рдиреАрд╣рд░реВ рдХреНрд░реЗрдбрд┐рдЯрд╣рд░реВрдорд╛ рдЧрдгрдирд╛ рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреН:

рддрдереНрдпрд╛рдЩреНрдХ рд╕рдВрдЧ рдЖрдлреНрдиреЛ MTProxy рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рддреИрдирд╛рддреА

1 CPU рдХреНрд░реЗрдбрд┐рдЯ = 1 CPU рдПрдХ рдорд┐рдиреЗрдЯрдХреЛ рд▓рд╛рдЧрд┐ 100% рд▓реЛрдбрдорд╛ рдХрд╛рдо рдЧрд░реНрджрдЫ, рд░ рд╣рд╛рдореАрд╕рдБрдЧ 6 рдХреНрд░реЗрдбрд┐рдЯрд╣рд░реВ рдЫрдиреН (рдЕрд░реНрдерд╛рдд, рд╢рд┐рдЦрд░рд╣рд░реВрдорд╛, 100% CPU рдЙрдкрдпреЛрдЧ 6 рдорд┐рдиреЗрдЯ рднрд┐рддреНрд░ рд╕рдореНрднрд╡ рдЫ, рд░ рддреНрдпрд╕рдкрдЫрд┐ CPU рдкрд╛рд╡рд░ рдШрдЯреНрдиреЗрдЫ)ред рдЕрдиреНрдп рд╕рдВрдпреЛрдЬрдирд╣рд░реВ: рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, 1 CPU рдХреНрд░реЗрдбрд┐рдЯ = 1 CPU рджреБрдИ рдорд┐рдиреЗрдЯрдХреЛ рд▓рд╛рдЧрд┐ 50% рд▓реЛрдбрдорд╛ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдЫ (рдЕрд░реНрдерд╛рдд рд╣рд╛рдореА 50 рдорд┐рдиреЗрдЯрдХреЛ рд▓рд╛рдЧрд┐ 12% рд▓реЛрдбрдорд╛ CPU рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдЫреМрдВ), рд╡рд╛, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╕реНрдерд┐рд░ 10% - th CPU рд▓реЛрдбрдХреЛ рд╕рдордпрдорд╛ рд╕рдореНрдкреВрд░реНрдг рд╕рдордп, рдЖрджрд┐ред

рдирд┐рд╖реНрдХрд░реНрд╖

  • рд╣рд╛рдореА "рдбрд┐рдЬрд┐рдЯрд▓ рдкреНрд░рддрд┐рд░реЛрдз" рдХреЛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реМрдВред рдПрдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕рдВрдЪрд╛рд░ рдЪреНрдпрд╛рдирд▓ рд╕рдВрдЧ рдЖрдлреНрдиреЛ "рдмреБрдмрд╛ рд░ рдЖрдорд╛" рдкреНрд░рджрд╛рдиред
  • рдпрджрд┐ рддрдкрд╛рдЗрдБрд╕рдБрдЧ MtprotoProxyTelegram рд░ OpenVPN рд╕рд░реНрднрд░рдорд╛ рддреИрдирд╛рде рдЧрд░рд┐рдПрдХреЛ рдЫ, рддрд░ рдердк рдЫреИрди, рддреНрдпрд╣рд╛рдБ рдХреБрдиреИ рдврд┐рд▓рд╛рдЗ / рдкрд┐рдВрдЧ / рд╡рд┐рдлрд▓рддрд╛ рд╣реБрдиреЗрдЫреИрди, рддрд░ рдпрджрд┐ рддрдкрд╛рдЗрдБ рд▓рдЧрд╛рддрд╛рд░ рддрдкрд╛рдЗрдБрдХреЛ t2 / рдорд╛рдЗрдХреНрд░реЛрдХреЛ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ рд╣реБрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рд╕рдВрдЪрд╛рд░ рдмреНрд░реЗрдХрдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдЦрдиреБрд╣реЛрд╕реНред
  • рдореЗрд░реЛ рд╡рд┐рджреЗрд╢ рдкрд┐рдВрдЧ ~ 100-250ms рдЫ, рдЖрд╡рд╛рдЬ рд╕рдВрдЪрд╛рд░ рдорд╛ рдХреБрдиреИ рдврд┐рд▓рд╛рдЗ рдЫреИрдиред
  • рд╕рдмреИ "рдпрд╕" рдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рддреНрддреАрдп рд▓рд╛рдЧрдд (VPC рд╕реНрд░реЛрддрд╣рд░реВ рд╕рд╣рд┐рдд) = режтВ╜ред

рддрдкрд╛рдИрдВрдХреЛ рд▓реЗрдЦ рдкреБрди: рдЫрд╛рдкреНрдиреБрд╣реЛрд╕реНред

UPD: рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдХреЗрд╣реА habrausers рд▓рд╛рдИ рдзрдиреНрдпрд╡рд╛рдж, рд╡рд╛рд╕реНрддрд╡рдорд╛, рдпреЛ рд╕рдореНрднрд╡ рдЫ (рдХреЗ рддрдереНрдпрд╛рдЩреНрдХ рд╕рдорд░реНрдерд┐рдд рдЫ?), рддреНрдпрд╣рд╛рдБ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ Mtproto рдкреНрд░реЛрдХреНрд╕реА рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рдбрдХрд░ рдЫрд╡рд┐рдХреЛ рд░рд╛рдореНрд░реЛ рдПрдирд╛рд▓рдЧрд╣рд░реВ рдЫрдиреНред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди