يوضح لك هذا الدليل كيفية إعداد خدمة onion لموقعك على الويب. للحصول على التفاصيل الفنية لكيفية عمل بروتوكول خدمة onion ، راجع صفحة بروتوكول خدمة onion الخاصة بنا.

الخطوة 0: احصل على Tor يعمل

كجزء من هذا الدليل ، سنفترض أن لديك Tor وظيفيًا في جهازك. لإعداد Tor، يرجى اتباع دليل تثبيت Tor. يجب أن يكون Tor يعمل بشكل صحيح حتى يعمل هذا الدليل. يجب أن تعرف أيضًا مكان ملفات تكوين Tor.

الخطوة 1: احصل على خادم ويب يعمل

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

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

في هذه الصفحة ، تعتمد أوامر إدارة خادم الويب على أنظمة تشغيل شبيهة بدبيان وقد تختلف عن الأنظمة الأخرى. تحقق من خادم الويب ووثائق نظام التشغيل.

اباتشي

يتوفر اباتشي في المستودع الرئيسي لتوزيعات لينكس و * بي اس دي المتعددة. لتثبيت حزمة اباتشي 2:

$ sudo apt install apache2

Nginx

يتوفر إنجينكس في المستودع الرئيسي لتوزيعات لينكس و * بي اس دي المتعددة. لتثبيت حزمة إنجينكس:

$ sudo apt install nginx

بشكل افتراضي ، سيعمل خادم الويب على localhost:80 في نهاية التثبيت. إذا تلقيت رسالة خطأ ، فقد حدث خطأ ما ولا يمكنك المتابعة حتى تكتشف سبب عدم نجاح ذلك.

بمجرد إعداد خادم الويب ، تأكد من أنه يعمل: افتح المتصفح وانتقل إلى http: // localhost /. ثم حاول وضع ملف في دليل html الرئيسي ، وتأكد من ظهوره عند الوصول إلى الموقع.

الخطوة الثانية: تكوين خدمة Tor onion الخاصة بك

الخطوة التالية هي فتح ملف الضبط الخاص بـ Tor (torrc) والقيام بالتكوينات المناسبة لإعداد خدمة onion. اعتمادًا على نظام التشغيل والإعداد لديك ، يمكن أن يكون ملف تكوين Tor في موقع مختلف أو يبدو مختلفًا.

ستحتاج إلى وضع السطرين التاليين في ملف torrc:

 HiddenServiceDir /var/lib/tor/my_website/
 HiddenServicePort 80 127.0.0.1:80

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

يحدد سطر HiddenServicePort منفذًا افتراضيًا (أي ، المنفذ الذي سيستخدمه الأشخاص الذين يزورون خدمة البصل الخاصة بك) ، وفي الحالة المذكورة أعلاه ينص على أنه يجب إعادة توجيه أي حركة مرور واردة إلى المنفذ 80 من خدمة onion الخاصة بك إلى‫127.0.0.1:80‪ (حيث يستمع خادم الويب من الخطوة 1).

نصيحة: من الممارسات الجيدة لتجنب تسريب خدمة onion إلى شبكة محلية تشغيل خدمات onion عبر مقابس يونكس بدلاً من مقبس TCP. ستحتاج إلى تعديل السطرين التاليين ووضعهما في ملف torrc:

HiddenServiceDir /var/lib/tor/my-website/
HiddenServicePort 80 unix:/var/run/tor-my-website.sock

الخطوة 3: أعد تشغيل Tor وتحقق من أنه يعمل

الآن احفظ torrc وأعد تشغيل Tor.

$ sudo systemctl restart tor

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

عندما يبدأ Tor ، سيقوم تلقائيًا بإنشاء مدير الخدمة المخفية الذي حددته (إذا لزم الأمر). تأكد من أن هذا هو الحال.

الخطوة 4: اختبر أن خدمة onion لديك تعمل

الآن للحصول على عنوان خدمة onion الخاص بك ، انتقل إلى دليل HiddenServiceDir الخاص بك ، وابحث عن ملف باسم hostname. يحتوي ملف hostname الموجود في دليل تكوين خدمة onion على اسم المضيف لخدمة onion v3 الجديدة. الملفات الأخرى هي مفاتيح خدمة onion الخاصة بك ، لذلك من الضروري الاحتفاظ بها خاصة. إذا تسربت مفاتيحك ، يمكن لأشخاص آخرين انتحال صفة خدمة onion الخاصة بك ، معتبرين أنها مخترقة وغير مجدية وخطيرة للزيارة.

يمكنك الآن الاتصال بخدمة البصلة الخاصة بك باستخدام متصفح Tor ، ويجب أن تحصل على صفحة html التي أعددتها مرة أخرى في الخطوة 1 . إذا لم ينجح الأمر ، فابحث في سجلاتك عن بعض التلميحات ، واستمر في اللعب بها حتى تعمل.

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

(اختياري) الخطوة 5: تشغيل خدمات onion متعددة

إذا كنت ترغب في إعادة توجيه عدة منافذ افتراضية لخدمة onion واحدة ، فما عليك سوى إضافة المزيد من خطوط HiddenServicePort. إذا كنت ترغب في تشغيل خدمات onion متعددة من نفس عميل Tor ، فما عليك سوى إضافة سطر HiddenServiceDir آخر. تشير جميع أسطر HiddenServicePort التالية إلى سطر HiddenServiceDir هذا ، حتى تضيف سطر HiddenServiceDir آخر:

 HiddenServiceDir /var/lib/tor/onion_service/
 HiddenServicePort 80 127.0.0.1:80

 HiddenServiceDir /var/lib/tor/other_onion_service/
 HiddenServicePort 6667 127.0.0.1:6667
 HiddenServicePort 22 127.0.0.1:22

إذا كنت تقوم بتشغيل مواقع onion متعددة على نفس خادم الويب ، فتذكر تحرير ملف المضيف الظاهري لخادم الويب الخاص بك وإضافة عنوان onion لكل موقع ويب. على سبيل المثال ، في إنجينكس وباستخدام Tor مع مقابس يونكس ، سيبدو التكوين كما يلي:

الخادم {
        listen unix:/var/run/tor-my-website.sock;
        اسم الخادم <your-onion-address>.onion;
        access_log /var/log/nginx/my-website.log;
        index index.html;
        root /path/to/htdocs;
}

أو في اباتشي مع خدمة Tor الاستماع على المنفذ 80:

     <VirtualHost *:80>
       اسم الخادم <your-onion-address.onion>
       جذر الوثيقة / المسار / إلى / htdocs
       سجل الأخطاء ${APACHE_LOG_DIR}/my-website.log
     </VirtualHost>

الخطوة 6: نصائح أمنية ومزيد من النصائح

الإصدار الافتراضي لخدمات onion هو الإصدار 3 ويتألف من 56 حرفًا. تم إهمال الإصدار 2 من خدمات Onion وسيتم سحبه قريبًا من شبكة Tor ، بعد إصدار Tor 0.4.6.x ، في يوليو 2021. يرجى قراءة منشور المدونة الجدول الزمني لإيقاف إصدار خدمة Onion للمزيد من المعلومات.

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

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

الآن بعد أن أصبح لديك موقع onion يعمل ، قد ترغب في نشره Onion-Location, أو استخدم أدوات مثل Docker, Heroku, Terraform, Ansible أو stem لأتمتة إدارة خدمات onion الخاصة بك. إذا كان لديك موقع ويب ثابت ، ولكنك لم تقم بتثبيت إنجينكس أو اباتشي ، فهناك مشروع آخر يجب تجربته OnionShare, حيث سيكون تشغيل موقع onion أسهل: يتم توجيهه بواجهة رسومية وبأقل قدر من التكوين.