استضافة الثوم والبصل: كيفية إنشاء مورد ويب بحيث لا يتم نزع النطاق





إخلاء المسؤولية: الأدوات الموضحة هنا قانونية تمامًا. إنه مثل السكين: شخص ما يقطع الملفوف إلى سلطة ، ويستخدمه شخص ما لشن هجمات. لذلك ، فإن المنشور مخصص حصريًا للأدوات التي يمكن استخدامها للأغراض الجيدة والسيئة.



DNS العالمي هو شيء رائع استمر لعقود. لكن بها مشكلة أساسية - يمكن ببساطة تقسيم نطاقك إذا قرروا فجأة أنك انتهكت شيئًا ما. أو شخص ما لديه المال والصلات سيكون لديه ضغينة ضدك. الجميع يتذكر تاريخ نفس موقع torrents.ru. إذا كنت تريد إزالة مثل هذه المخاطر لسبب ما ، فيمكنك البحث عن شبكات التراكب التي ليس لديها ببساطة منظم قادر على تقسيم اسم المجال. لذلك ، سنعمل على زيادة موارد الويب Onion و i2p.



حلقات البصل



لنبدأ بالكلاسيكيات. أعتقد أن كل شخص تقريبًا في Habré استخدم Tor في شكل حزمة متصفح Tor . لقد ساعدني ذلك كثيرًا عندما بدأوا فجأة ، أثناء عملية البحث عن Telegram ، في قطع الاتصال فجأة مع أكبر المضيفين في أكثر الأماكن غير المتوقعة. في هذا الوضع ، يستخدم Tor تشفير البصل الكلاسيكي ، وبيانات التفاف طبقة تلو طبقة بطريقة تجعل من المستحيل تحديد مصدر ووجهة الحزمة. ومع ذلك ، لا تزال نقطة نهاية المسار هي الإنترنت العادي ، حيث نمر في النهاية من خلال عقد الخروج.



هذا الحل له عدة مشاكل:



  1. Exit- , , . , , , .
  2. tor , .


-



لذلك ، سنرفع مورد البصل مباشرة داخل الشبكة ، دون الوصول إلى الإنترنت العادي. على سبيل المثال ، كنقطة إدخال احتياطية إضافية لموردك. لنفترض أن لديك بالفعل خادم ويب به بعض المحتويات التي يقدمها nginx. بالنسبة للمبتدئين ، إذا كنت لا تريد أن تكون على الإنترنت العام ، فلا تكن كسولًا جدًا للذهاب إلى iptables وتكوين جدار الحماية الخاص بك. يجب أن يتم حظرك من الوصول إلى خادم الويب الخاص بك من أي مكان باستثناء المضيف المحلي. نتيجة لذلك ، حصلت على موقع يمكن الوصول إليه محليًا على المضيف المحلي : 8080 /. سيكون التثبيت الإضافي لـ https زائداً عن الحاجة هنا ، حيث سيتولى نقل tor هذه المهمة.



توسيع TOR



سأفكر في التثبيت باستخدام Ubuntu كمثال ، لكن لن تكون هناك اختلافات جوهرية مع التوزيعات الأخرى. أولاً ، دعنا نحدد المستودع. لا توصي الوثائق الرسمية باستخدام الحزم التي تحتفظ بها التوزيعة نفسها ، لأنها قد تحتوي على ثغرات حرجة تم تصحيحها بالفعل من قبل المطورين. علاوة على ذلك ، يوصي المطورون باستخدام آلية الترقيات غير المراقبة للتحديثات التلقائية من أجل ضمان تسليمها في الوقت المناسب.



قم بإنشاء ملف لمستودع تخزين إضافي:



# nano /etc/apt/sources.list.d/tor.list


وأضف إليها العناوين اللازمة:



deb https://deb.torproject.org/torproject.org bionic main
deb-src https://deb.torproject.org/torproject.org bionic main


نحتاج الآن إلى الاهتمام بمفتاح gpg ، والذي بدونه لن يثق الخادم بشكل معقول في الحزم الجديدة.



# curl https://deb.torproject.org/torproject.org A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --import
# gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add -


يمكنك الآن تثبيت الحزمة الرئيسية من المنبع وسلسلة المفاتيح لتحديث التوقيع تلقائيًا.



# apt update
# apt install tor deb.torproject.org-keyring


تكوين الوكلاء



في / etc / tor / torrc ، ستجد ملف الضبط الخاص بالبرنامج الخفي. بعد تحديثه ، لا تنس إعادة تشغيله.

أريد فقط تحذير المستخدمين الفضوليين بشكل خاص. لا تقم بتمكين وضع الترحيل على جهازك المنزلي! خاصة في وضع عقدة الخروج. يمكنهم أن يطرقوا. على VPS ، لن أقوم أيضًا بتكوين العقدة كمرحل ، لأن هذا سيخلق حمولة كبيرة إلى حد ما على كل من المعالج وحركة المرور. على قناة واسعة ، يمكنك بسهولة الوصول إلى 2-3 تيرابايت شهريًا.



ابحث عن قسم في torrc يشبه هذا:



############### This section is just for location-hidden services ###


هنا تحتاج إلى تسجيل مورد الويب المحلي الخاص بك. أكثر أو أقل من هذا القبيل:



HiddenServiceDir /Library/Tor/var/lib/tor/hidden_service/
HiddenServicePort 80 127.0.0.1:8080


أو يمكنك استخدام مآخذ يونكس:



HiddenServiceDir /Library/Tor/var/lib/tor/hidden_service/
HiddenServicePort 80 unix:/path/to/socket


نحصل على العنوان



هذا كل شيء ، الآن نعيد تشغيل برنامج Tor الخفي عبر systemctl وننظر إلى HiddenServiceDir. سيكون هناك عدة ملفات - المفتاح الخاص واسم مضيف البصلة الخاص بك. وهو عبارة عن معرف عشوائي مكون من 16 حرفًا. على سبيل المثال ، gjobqjj7wyczbqie.onion هو عنوان مصدر بحث الشموع. العنوان عشوائي تمامًا ، ولكن مع بحث طويل بما فيه الكفاية ، من الممكن إنشاء زوج يمكن قراءته من قبل الإنسان من العنوان والمفتاح الخاص. بالطبع ، ليس كل الأحرف الستة عشر - سيستغرق الأمر مليارات السنين. على سبيل المثال ، يحتوي الكتالوج المشهور لكتب Flibusta على مرآة flibustahezeous3.onion ، وقد أنفق Facebook الكثير من الموارد لاختيار الأكثر صدقًا من الخيارات التي تم إنشاؤها: facebookcorewwwi.onion .



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



ثوم



صورة

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



صورة

شعار مرجعي لـ i2p باللون الأحمر وتنفيذ أرجواني لـ i2pd



لدى I2p عدة خيارات لتنفيذ عقد جهاز التوجيه. التطبيق الرسمي مكتوب بلغة جافا. وهي تلتهم بشكل كبير جميع الموارد المتاحة ، سواء من حيث ذاكرة الوصول العشوائي ووحدة المعالجة المركزية. ومع ذلك ، فهي التي تعتبر المرجع ويتم تدقيقها بانتظام. أوصي باستخدام الإصدار الأخف ، i2pd ، المكتوب بلغة C ++. له الفروق الدقيقة الخاصة به التي قد تتسبب في فشل بعض تطبيقات i2p ، ولكنه بشكل عام تطبيق بديل رائع. يتم نشر المشروع بنشاط في الوقت الحاضر.



تثبيت الشيطان



أفضل جزء هو أن المؤلفين قدموا العديد من خيارات النشر ، بما في ذلك docker و snap. يمكنك السير في طريق المستودع الكلاسيكي.



sudo add-apt-repository ppa:purplei2p/i2pd
sudo apt-get update
sudo apt-get install i2pd


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



no_face@i2pd:~$ snap info i2pd
name:      i2pd
summary:   Distributed anonymous networking framework
publisher: Darknet Villain (supervillain)
store-url: https://snapcraft.io/i2pd
license:   BSD-3-Clause
description: |
  i2pd (I2P Daemon) is a full-featured C++ implementation of I2P client.
  I2P (Invisible Internet Protocol) is a universal anonymous network layer.
  All communications over I2P are anonymous and end-to-end encrypted,
  participants don't reveal their real IP addresses.
snap-id: clap1qoxuw4OdjJHVqEeHEqBBgIvwOTv
channels:
  latest/stable:    2.32.1 2020-06-02 (62) 16MB -
  latest/candidate: ↑
  latest/beta:      ↑
  latest/edge:      2.32.1 2020-06-02 (62) 16MB -


قم بتثبيت snap إذا لم تكن قد قمت بالفعل بتعيين الخيار الثابت الافتراضي:



apt install snapd
snap install i2pd


التكوين



على عكس إصدار Java web-gui ، لا يحتوي i2pd على الكثير من الإعدادات والتقلبات وعلامات التبويب. فقط أهم الأمور حتى الزهد. ومع ذلك ، فإن أسهل طريقة هي تكوينه مباشرة في ملف التكوين.



لكي يصبح مورد الويب الخاص بك متاحًا في i2p ، فأنت بحاجة إلى وكيله بنفس الطريقة كما هو الحال مع البصل. للقيام بذلك ، انتقل إلى ~ / .i2pd / tunnels.conf وأضف الواجهة الخلفية.



[anon-website]
type = http
host = 127.0.0.1
port = 8080
keys = anon-website.dat


بعد إعادة تشغيل البرنامج الخفي ، ستحصل على عنوان عشوائي 32 بت. يمكن عرضها في وحدة تحكم الويب ، والتي تتوفر افتراضيًا في 127.0.0.1 : 7070 /؟ Page = i2p_tunnels. لا تنس السماح بالوصول إليه من عنوان IP الخاص بك ، إذا لزم الأمر. بشكل افتراضي ، يتوفر فقط على الواجهة المحلية. سيكون هناك شيء مخيف مثل ukeu3k5oycgaauneqgtnvselmt4yemvoilkln7jpvamvfx7dnkdq.b32.i2p.



تحتوي شبكة i2p على ما يشبه DNS ، لكنها تشبه إلى حد كبير قائمة متفرقة من / etc / hosts. أنت تشترك في مصادر محددة في وحدة التحكم تخبرك بكيفية الوصول إلى flibusta.i2p الشرطي . لذلك ، من المنطقي إضافة اسم جميل إلى حد ما إلى الموارد الكبيرة مثل inr.i2p.



هل يمكن نشر i2p والبصل معنا؟



فقط أريد أن أحذر RuVDS ليست استضافة مضادة للرصاص. في حالة وجود شكوى دافعة ضد عميلنا ، يمكننا إنهاء العقد وإلغاء الجهاز الظاهري. معظم المضيفين سيفعلون الشيء نفسه. ومع ذلك ، نظرًا لخصائص بنية Tor وخاصةً i2p ، من الصعب جدًا ، بل ومن المستحيل في الغالب ، تحديد مكان استضافة موقع الويب بالضبط.



ومع ذلك ، لا يوجد شيء غير قانوني في استخدام مثل هذه الأدوات. لذلك ، لن نمانع إذا فتحت مرآة لمورد الويب القانوني الخاص بك في شبكات التراكب. على أي حال ، أوصي بشدة مرة أخرى بعدم إجراء تجربة عمياء مع tor على جهازك المنزلي. إما أن يتم وضع عنوان IP في القائمة السوداء ، أو سيصل صاحب الملكية. من الأفضل استئجار VPS ، فهو غير مكلف.






All Articles