نشر MTProxy Telegram الخاص بك مع الإحصائيات

نشر MTProxy Telegram الخاص بك مع الإحصائيات

"لقد ورثت هذه الفوضى ،
بدءا من Zello الوقح. ينكدين
وتنتهي بـ "أي شخص آخر" على منصة Telegram
في عالمي.

ثم الفواق ،
وأضاف المسؤول على عجل وبصوت عال:
لكنني سأرتب الأمور (هنا في قسم تكنولوجيا المعلومات) "
(...).

Durov ، يعتقد بحق أن الدول الاستبدادية هي التي يجب أن تخاف منه ، و cypherpunk ، و Roskomnadzor والدروع الذهبية مع مرشحات DPI الخاصة بهم لا تزعجه حقًا.
(تقنية سياسية)

سياستي التقنية أبسط ، يمكنني أن أصف هنا أفكاري حول الحجب المتهور في Runet ، لكنني أعتقد أن المواطنين التقدميين لمستخدمي الروس الحديثين ومستخدمي Habr قد شعروا بعدم احتراف الحكومة الحالية في بشرتهم ، لذلك سأقتصر على ذلك. عبارة واحدة: سياستنا الفنية هي "المقاومة الرقمية". "تزويد الأقارب والأصدقاء بقناة اتصال مستقرة".

جارٍ نشر وكيل MTProto Telegram

  • المستوى التقني من التعقيد "سهل" ، على سبيل المثال ، إذا اتبعت ورقة الغش هذه.
  • مستوى الموثوقية "أعلى من المتوسط": صورة عامل الإرساء تعمل بثبات ، ولا تحتاج إلى إعادة التشغيل كل يوم ، كما كتب المطورون في وثائق Telegram الرسمية الخاصة بهم ، ولكن ربما تحتوي الحاوية على بعض الثغرات الأمنية.
  • مستوى المقاومة / القلق - 10 من أعضاء داعش ينسجون مؤامراتهم "يستخدم الأقارب" ، ولم يأت الحظر من RKN ولو مرة واحدة طوال الوقت (منذ الربيع).
  • مستوى الثقة هو "عدم ثقة الطفل العام" ، وهي مشكلة من جانب العميل (بعض الأصدقاء يشككون في MtprotoProxy الخاص بي).
  • مستويات التستوستيرون - "لم تحصل على أعلى".
  • التكاليف المالية - "0₽".
  • المكافأة المالية - "لا تعتمد على المواطن دوروف". الترويج - القدرة على فرض الإعلان.

سنقوم برفع TelegramProxy الخاص بنا على القدرات "المجانية / الشخصية" لـ Amazon-ec2: t2.micro. إستعملت هذا سيارة.

حسنًا ، نشر خادمك المجاني ، انتقل إلى الموقع الرسمي دوكرهوب وتنزيل حاوية عامل الإرساء.

لا داعي للبحث عن صورة أو ملف أو زر سحري - "لم تكن موجودة" ، كل السحر يتم في 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».

بعد هذا الأمر ، ستظهر سلسلة HEX في الإخراج الطرفي ، لكننا لسنا مهتمين بها.

نكتب في CLI:

$ docker logs mtproto-proxy

ونحصل على البيانات المطلوبة:

نشر MTProxy Telegram الخاص بك مع الإحصائيات
في إخراج هذا السجل ، نظهر (لطخة):

أ) خادمنا ip (خادم خارجي ip) ؛
ب) وسر عشوائي - سلسلة عشوائية في HEX.

قبل تسجيل MtproProxy الخاص بنا ، تحتاج إلى تكوين جدار الحماية الرئيسي عبر iptables (بغض النظر عن الطريقة التي تعيد بها توجيه حركة المرور إلى VPC هذا ، سيكون الأمر شقيًا ، نظرًا لأن جدار الحماية الرئيسي في Amazon-EC2 يقع في واجهة الويب وله أولوية أعلى من iptables).

لنذهب إلى "وحدة التحكم Amazon-EC2 "في مجموعة الأمان وافتح المنفذ الوارد 443 (الإخفاء المنطقي حركة المرور لأول مرة).

نشر MTProxy Telegram الخاص بك مع الإحصائيات

نأخذ بياناتنا "ip and secret" من السجل ونذهب إلى Telegram messenger ، وابحث عن MTProxy Admin Bot (MTProxybot) وسجّل MtproProxy: قم بتشغيل الأمر [/ newproxy] وأدخل [our_ip: 443] ، و ثم لدينا [سر / HEX].

إذا أخطأت عند إدخال البيانات ، فسيغضب الروبوت ويرسلك إلى ...

إذا قمت بملء سطرين دون أخطاء ، فستتلقى الموافقة ورابطًا صالحًا إلى MtprotoProxyTelegram الحالي الخاص بك ، والذي يمكنك مشاركته مع أي شخص.

نشر MTProxy Telegram الخاص بك مع الإحصائيات

أيضًا ، من خلال هذا الروبوت ، يمكنك إضافة قناة الرعاية الخاصة بك (ولكن ليس الدردشة) ، حيث ستفرض وجهات نظرك على المستخدمين الذين اتصلوا بخادمك ، أو لا يمكنك "البريد العشوائي" ولا تزعج كونك عملاء محتملين بدون إظهار القناة في قائمة المسنجر المثبتة.

بضع كلمات أخرى حول الروبوت ، حيث يمكنك طلب إحصائيات ، ولكن يمكنك أيضًا طلب "كعكة دائرية". على ما يبدو ، "الإحصائيات" متاحة عندما يكون لديك "حشد من المستقلين" خلفك محج قلعة.

رصد

كم عدد المستخدمين الذين يمكننا الاتصال بخادمنا؟ وعلى أي حال ، من / ماذا يوجد؟ ماذا؟ وكم؟

نحن ننظر إلى ما هو موجود وفقًا للوثائق الرسمية ... نعم ، هنا ، افعل ذلك على النحو التالي:

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

"اجعل جيبك أوسع" وفقًا للأوامر المقترحة ، سنتلقى دائمًا خطأ مشابهًا:

«curl: (7) فشل الاتصال بمنفذ المضيف المحلي 2398: تم رفض الاتصال»

وكيلنا سوف يعمل. لكن! باجل ، وليس الإحصائيات التي نحصل عليها.

يمكنك القيام بأشياء للعيون الحمراء: تحقق

$ netstat -an | grep 2398 и...

في البداية اعتقدت أن هذا كان دعامة أخرى وراء مطوري Telegram (وما زلت أعتقد ذلك) ، ثم وجدت حلاً مؤقتًا جيدًا: تلميع Docker Container بملف.

في وقت لاحق ، لفت انتباهي إنفة:

حول رقصات الدولة لروسكومنادزور حول "الإحصائيات".

"لقد حظرنا بعض البروكسيات العامة على خوادمنا باستخدام قواعد بيانات مشروع فايرهول. يقوم هذا المشروع بمراقبة القوائم مع البروكسيات العامة وإنشاء قواعد بيانات معهم.

منذ تلك اللحظة (أي تقريبًا يومين بالفعل) ، لم يتم حظر عنوان IP واحد لوكيلنا الروسي.

3. نخبرك بكيفية إنشاء بروكسي يكاد يكون غير معرض للخطر بالنسبة لـ Roskomnadzor ونشارك نصًا برمجيًا لحظر البروكسيات العامة.

- قم بتحديث حاوية عامل إرساء الوكيل MTProto (أو البرنامج الخفي) إلى أحدث إصدار: تحسب RKN الإصدارات القديمة من خلال منفذ الإحصائيات ، والذي كان مرتبطًا بـ 0.0.0.0 وتم تعريفه بشكل فريد للإنترنت بالكامل. والأفضل من ذلك ، افتح المنافذ الضرورية باستخدام iptables ، وأغلق الباقي (تذكر أنه في حالة حاوية عامل إرساء ، يجب عليك استخدام قاعدة FORWARD).

- تعلمت Roskomnadzor كيفية تفريغ حركة المرور منذ فترة طويلة: فهم يرون الطلبات داخل بروكسي HTTP و SOCKS5 ، كما أنهم يرون الإصدار القديم من تشويش وكيل MTProto.

عندما يصل عملاء بعض المزودين الذين لديهم عمليات تفريغ كهذه إلى Telegram من خلال هذه الوكلاء ، ترى RKN مثل هذه الطلبات وتحظر هذه الوكلاء على الفور. الشيء نفسه ينطبق على وكيل MTProto مع التعتيم القديم.

الحل: قم بتوزيع secret فقط مع dd في البداية للعملاء الذين يتصلون بالوكيل (لا حاجة لتحديد أحرف إضافية dd في إعدادات وكيل mtproto نفسه). سيمكن هذا إصدارًا من التشويش الذي لا يمكن للدمبيز اكتشافه.

ولا يوجد وكلاء 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

curl: (7) فشل الاتصال بمنفذ 0.0.0.0 2398: تم رفض الاتصال
الاحصائيات لا تزال غير متوفرة.! ..

تعرف على معرف حاوية عامل الإرساء:

$ docker ps

أسماء منافذ الحالة التي تم إنشاؤها بأمر معرّف الحاويات
f423c209cfdc telegrammessenger / proxy: الأحدث "/ 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 الجذر $ CONFIG --allow-skip-d h - معلومات الطبيعة "$ 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 (حفظ / خروج nano / خروج الحاوية).

أعد تشغيل حاوية عامل الإرساء:

$ docker restart mtproto-proxy2

كل شيء الآن تحت القيادة:

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

نشر MTProxy Telegram الخاص بك مع الإحصائيات
هناك الكثير من "القمامة" في الإحصائيات (ثلثها على الشاشة) ، قم بإنشاء اسم مستعار:

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

نحصل على ما تم صقل حاوية عامل الإرساء من أجله: عدد التوصيلات والحمل:

$ telega

نشر MTProxy Telegram الخاص بك مع الإحصائيات
حاوية Docker قيد التشغيل ، والإحصاءات تدور.

أنفقت الموارد

أنت رائع مثل ستيوارت ريدمان ، حتى أنك تترك علامة على سراويلك الداخلية. تترك صورة Docker قيد التشغيل بصمة كبيرة.

ليس من المنطقي وصف مزايا وعيوب صور عامل الإرساء ، فحاوية عامل الإرساء عبارة عن آلة افتراضية مصغرة تستهلك موارد أقل من الجهاز الظاهري "الحقيقي" ، مثل VirtualBox ، ولكنه يفعل ذلك.

1) تم إطلاقها مع إحصاءات صورة عامل الإرساء أو بدونها ، عميلان مرحان أو عشرة - يتم استخدام الموارد بنفس الطريقة: 75٪ من أداء وحدة المعالجة المركزية t2.micro بالكامل.

2) ننظر إلى مراقبة خادم VPC:

نشر MTProxy Telegram الخاص بك مع الإحصائيات

من الرسم البياني لاستخدام الموارد على VPC ، نرى أن حاوية عامل الإرساء تستهلك باستمرار حوالي 7,5٪ من إجمالي الحد الأقصى. أداء وحدة المعالجة المركزية وفي 28 مايو تم إيقافه عن قصد / مؤقتًا (ملاحظة - OpenVPN & pptp يعملان أيضًا على الخادم).

لماذا 10٪ استخدام ثابت لوحدة المعالجة المركزية هو الحد الأقصى لهذا الخادم؟

نظرًا لوجود قيود من Amazon EC2 ويتم حسابها في شكل أرصدة:

نشر MTProxy Telegram الخاص بك مع الإحصائيات

1 رصيد وحدة المعالجة المركزية = وحدة معالجة مركزية واحدة تعمل عند تحميل 1٪ لمدة دقيقة واحدة ، ولدينا 100 أرصدة (أي عند الذروة ، يمكن استخدام وحدة المعالجة المركزية بنسبة 6٪ في غضون 100 دقائق ، وبعد ذلك ستنخفض طاقة وحدة المعالجة المركزية). مجموعات أخرى: على سبيل المثال ، رصيد واحد لوحدة المعالجة المركزية = وحدة معالجة مركزية واحدة تعمل عند تحميل 6٪ لمدة دقيقتين (على سبيل المثال ، يمكننا استخدام وحدة المعالجة المركزية عند تحميل 1٪ لمدة 1 دقيقة) ، أو ، على سبيل المثال ، تحميل ثابت لوحدة المعالجة المركزية بنسبة 50٪ أثناء طوال الوقت ، إلخ.

النتائج

  • نحن جزء من "المقاومة الرقمية". تزويد "آبائهم وأمهاتهم" بقناة اتصال موثوقة.
  • إذا كان لديك MtprotoProxyTelegram و OpenVPN منتشرين على الخادم ، ولكن ليس أكثر من ذلك ، فلن يكون هناك تأخير / أصوات / إخفاقات ، ولكن إذا كنت تقوم باستمرار بتجربة t2 / micro ، فانتظر مكابح الاتصال.
  • يبلغ ping الخارجي الخاص بي حوالي 100-250 مللي ثانية ، ولا يوجد تأخير في الاتصال الصوتي.
  • التكاليف المالية لكل "هذا" (بما في ذلك موارد VPC) = 0₽.

إعادة طبع مقالتك.

محدث: بفضل بعض habrausers للتعليقات المفيدة ، في الواقع ، من الممكن (هل الإحصائيات مدعومة؟) ، هناك نظائر أفضل لصورة وكيل Mtproto Telegram docker الرسمية.

المصدر: www.habr.com

إضافة تعليق