تم إنشاء هذه الترجمة باستخدام التعلم الآلي وقد لا تكون دقيقة بنسبة 100%. عرض النسخة الإنجليزية

إنشاء وتشغيل خادم إعادة البذر (Reseed Server) الخاص بـ I2P

دليل شامل لإعداد وتشغيل خادم reseed من I2P لمساعدة أجهزة router الجديدة على الانضمام إلى الشبكة

خوادم إعادة البذر (Reseed hosts) هي بنية تحتية حيوية لشبكة I2P، حيث توفر لأجهزة router الجديدة مجموعة أولية من العقد خلال عملية الإقلاع الأولي (bootstrap). سيرشدك هذا الدليل خلال إعداد وتشغيل خادم reseed خاص بك.

ما هو خادم إعادة البذر (Reseed Server) في I2P؟

يساعد خادم إعادة البذر (reseed server) في I2P على دمج أجهزة التوجيه الجديدة في شبكة I2P من خلال:

  • توفير الاكتشاف الأولي للنظراء: تتلقى أجهزة Router الجديدة مجموعة أولية من عقد الشبكة للاتصال بها
  • استعادة Bootstrap: مساعدة أجهزة Router التي تواجه صعوبة في الحفاظ على الاتصالات
  • التوزيع الآمن: عملية إعادة التوزيع (reseeding) مشفرة وموقعة رقمياً لضمان أمان الشبكة

عندما يبدأ router I2P جديد للمرة الأولى (أو فقد جميع اتصالات النظراء الخاصة به)، فإنه يتصل بخوادم reseed لتنزيل مجموعة أولية من معلومات الـ router. هذا يسمح للـ router الجديد بالبدء في بناء قاعدة بيانات الشبكة الخاصة به وإنشاء tunnels.

المتطلبات الأساسية

قبل البدء، ستحتاج إلى:

  • خادم Linux (يُفضّل Debian/Ubuntu) مع صلاحيات root
  • اسم نطاق يشير إلى خادمك
  • ذاكرة وصول عشوائي لا تقل عن 1GB ومساحة قرص 10GB
  • router I2P يعمل على الخادم لملء قاعدة بيانات الشبكة (netDb)
  • إلمام أساسي بإدارة أنظمة Linux

إعداد الخادم

Step 1: Update System and Install Dependencies

أولاً، قم بتحديث نظامك وتثبيت الحزم المطلوبة:

sudo apt update && sudo apt upgrade -y && sudo apt-get install golang-go git make docker.io docker-compose -y

هذا يثبت: - golang-go: بيئة تشغيل لغة البرمجة Go - git: نظام التحكم في الإصدارات - make: أداة أتمتة البناء - docker.io & docker-compose: منصة الحاويات لتشغيل Nginx Proxy Manager

تثبيت الحزم المطلوبة

Step 2: Clone and Build Reseed Tools

استنسخ مستودع reseed-tools وقم ببناء التطبيق:

cd /home/i2p
git clone https://i2pgit.org/idk/reseed-tools
cd reseed-tools
make build
sudo make install

حزمة reseed-tools توفر الوظائف الأساسية لتشغيل خادم reseed. تتعامل مع: - جمع معلومات router من قاعدة بيانات الشبكة المحلية الخاصة بك - تعبئة معلومات router في ملفات SU3 موقعة - تقديم هذه الملفات عبر HTTPS

استنساخ مستودع reseed-tools

Step 3: Generate SSL Certificate

قم بإنشاء شهادة SSL والمفتاح الخاص لخادم reseed الخاص بك:

su - i2p -c 'reseed-tools reseed --signer=admin@stormycloud.org --netdb=/home/i2p/.i2p/netDb --port=8443 --ip=127.0.0.1 --trustProxy'

المعاملات المهمة: - --signer: عنوان بريدك الإلكتروني (استبدل admin@stormycloud.org بعنوانك الخاص) - --netdb: المسار إلى قاعدة بيانات الشبكة الخاصة بموجه I2P - --port: المنفذ الداخلي (يُنصح باستخدام 8443) - --ip: الربط بـ localhost (سنستخدم reverse proxy للوصول العام) - --trustProxy: الوثوق برؤوس X-Forwarded-For من الـ reverse proxy

سيقوم الأمر بإنشاء: - مفتاح خاص لتوقيع ملفات SU3 - شهادة SSL لاتصالات HTTPS الآمنة

توليد شهادة SSL

الخطوة 1: تحديث النظام وتثبيت التبعيات

هام جداً: احتفظ بنسخة احتياطية آمنة للمفاتيح المُولّدة الموجودة في /home/i2p/.reseed/:

sudo tar -czf reseed-keys-backup.tar.gz /home/i2p/.reseed/

قم بتخزين هذه النسخة الاحتياطية في موقع آمن ومشفر مع وصول محدود. هذه المفاتيح ضرورية لتشغيل خادم إعادة البذر الخاص بك ويجب حمايتها بعناية.

Configuring the Service

الخطوة 2: استنساخ وبناء أدوات Reseed

أنشئ خدمة systemd لتشغيل خادم إعادة البذر تلقائيًا:

sudo tee /etc/systemd/system/reseed.service <<EOF
[Unit]
Description=Reseed Service
After=network.target

[Service]
User=i2p
WorkingDirectory=/home/i2p
ExecStart=/bin/bash -c 'reseed-tools reseed --signer=admin@stormycloud.org --netdb=/home/i2p/.i2p/netDb --port=8443 --ip=127.0.0.1 --trustProxy'
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target
EOF

تذكر استبدال admin@stormycloud.org بعنوان بريدك الإلكتروني الخاص.

الآن قم بتفعيل وبدء الخدمة:

sudo systemctl daemon-reload
sudo systemctl enable reseed
sudo systemctl start reseed

تحقق من أن الخدمة قيد التشغيل:

sudo systemctl status reseed

التحقق من حالة خدمة إعادة البذر

الخطوة 3: إنشاء شهادة SSL

للحصول على الأداء الأمثل، قد ترغب في إعادة تشغيل خدمة الـ reseed بشكل دوري لتحديث معلومات الـ router:

sudo crontab -e

أضف هذا السطر لإعادة تشغيل الخدمة كل 3 ساعات:

0 */3 * * * systemctl restart reseed

Setting Up Reverse Proxy

يعمل خادم reseed على localhost:8443 ويحتاج إلى reverse proxy للتعامل مع حركة HTTPS العامة. نوصي باستخدام Nginx Proxy Manager لسهولة استخدامه.

الخطوة 4: احفظ نسخة احتياطية من مفاتيحك

نشر Nginx Proxy Manager باستخدام Docker:

docker run -d \
--name nginx-proxy-manager \
-p 80:80 \
-p 81:81 \
-p 443:443 \
-v $(pwd)/data:/data \
-v $(pwd)/letsencrypt:/etc/letsencrypt \
--restart unless-stopped \
jc21/nginx-proxy-manager:latest

هذا يكشف: - المنفذ 80: حركة مرور HTTP - المنفذ 81: واجهة الإدارة - المنفذ 443: حركة مرور HTTPS

Configure Proxy Manager

  1. قم بالوصول إلى واجهة الإدارة على http://your-server-ip:81

  2. تسجيل الدخول باستخدام بيانات الاعتماد الافتراضية:

مهم: قم بتغيير بيانات الاعتماد هذه فوراً بعد تسجيل الدخول الأول!

تسجيل الدخول إلى Nginx Proxy Manager

  1. انتقل إلى Proxy Hosts وانقر على Add Proxy Host

إضافة مضيف بروكسي

  1. قم بتكوين مضيف الوكيل (proxy host):
    • اسم النطاق: نطاق إعادة البذر الخاص بك (مثال: reseed.example.com)
    • البروتوكول: https
    • اسم المضيف / عنوان IP للتوجيه: 127.0.0.1
    • منفذ التوجيه: 8443
    • فعّل تخزين الأصول مؤقتاً (Cache Assets)
    • فعّل حظر الثغرات الشائعة (Block Common Exploits)
    • فعّل دعم Websockets

تكوين تفاصيل مضيف البروكسي

  1. في تبويب SSL:
    • اختر Request a new SSL Certificate (Let’s Encrypt)
    • فعّل Force SSL
    • فعّل HTTP/2 Support
    • وافق على شروط خدمة Let’s Encrypt

إعدادات شهادة SSL

  1. انقر على حفظ

يجب أن يكون خادم إعادة التهيئة (reseed) الخاص بك متاحًا الآن على https://reseed.example.com

تكوين ناجح لخادم reseed

Registering Your Reseed Server

بمجرد أن يصبح خادم إعادة البذر (reseed server) الخاص بك جاهزاً للعمل، اتصل بمطوري I2P لإضافته إلى قائمة خوادم إعادة البذر الرسمية.

الخطوة 5: إنشاء خدمة Systemd

راسل zzz (المطور الرئيسي لـ I2P) عبر البريد الإلكتروني بالمعلومات التالية:

الخطوة 6: اختياري - تكوين عمليات إعادة التشغيل الدورية

قم بتضمين ما يلي في بريدك الإلكتروني:

Verification

سيتحقق مطورو I2P من أن خادم إعادة البذر (reseed server) الخاص بك: - مُكوّن بشكل صحيح ويقدم معلومات الموجه (router) - يستخدم شهادات SSL صالحة - يوفر ملفات SU3 موقعة بشكل صحيح - متاح ويستجيب

  1. عنوان URL لخادم Reseed: عنوان URL الكامل لبروتوكول HTTPS (مثال: https://reseed.example.com)
  2. شهادة reseed العامة: موجودة في /home/i2p/.reseed/ (أرفق ملف .crt)
  3. البريد الإلكتروني للتواصل: طريقة الاتصال المفضلة لديك لتلقي إشعارات صيانة الخادم
  4. موقع الخادم: اختياري لكنه مفيد (البلد/المنطقة)
  5. وقت التشغيل المتوقع: التزامك بصيانة الخادم

تثبيت Nginx Proxy Manager

بمجرد الموافقة، سيتم إضافة خادم إعادة التوزيع الخاص بك إلى القائمة الموزعة مع أجهزة توجيه I2P، مما يساعد المستخدمين الجدد على الانضمام إلى الشبكة!

راقب خدمة إعادة البذر الخاصة بك:

Monitoring and Maintenance

تكوين مدير البروكسي

راقب موارد النظام:

sudo systemctl status reseed
sudo journalctl -u reseed -f

Update Reseed Tools

قم بتحديث reseed-tools بشكل دوري للحصول على أحدث التحسينات:

htop
df -h

معلومات الاتصال

إذا كنت تستخدم Let’s Encrypt من خلال Nginx Proxy Manager، فإن الشهادات ستتجدد تلقائياً. تحقق من أن التجديد يعمل:

cd /home/i2p/reseed-tools
git pull
make build
sudo make install
sudo systemctl restart reseed

المعلومات المطلوبة

تحقق من السجلات بحثًا عن الأخطاء:

docker logs nginx-proxy-manager | grep -i certificate

الدعم المالي

قد تتوفر دعماً مالياً متواضعاً لأولئك الذين يشغلون خوادم إعادة التهيئة (reseed servers). توفر StormyCloud منحة سنوية تصل إلى 100 دولار كتعويض جزئي عن تكاليف الخادم. يقتصر الأهلية على المشغلين الذين أداروا خوادم إعادة التهيئة بشكل جيد لعدة أشهر. للاستفسار، يُرجى التواصل مع admin at stormycloud dot org.

تكوين الخدمة

الخدمة لا تبدأ

تحقق من السجلات بحثًا عن الأخطاء:

sudo journalctl -u reseed -n 50

القضايا الشائعة: - جهاز التوجيه I2P غير قيد التشغيل أو قاعدة البيانات الشبكية فارغة - المنفذ 8443 قيد الاستخدام بالفعل - مشكلات في الأذونات مع الدليل /home/i2p/.reseed/

لا يتم تقديم معلومات الموجه

تأكد من أن جهاز التوجيه I2P قيد التشغيل وقد ملأ قاعدة بيانات الشبكة الخاصة به:

ls -lh /home/i2p/.i2p/netDb/

يجب أن ترى العديد من ملفات .dat. إذا كانت فارغة، انتظر حتى يقوم جهاز التوجيه الخاص بك في I2P باكتشاف الأقران.

أخطاء شهادة SSL

تحقق من صحة شهاداتك:

openssl s_client -connect reseed.example.com:443 -servername reseed.example.com

لا يمكن الوصول عبر النطاق

تحقق من: - سجلات DNS تشير بشكل صحيح إلى خادمك - جدار الحماية يسمح بالمنافذ 80 و 443 - مدير وكيل Nginx قيد التشغيل: docker ps

Security Considerations

  • حافظ على أمان مفاتيحك الخاصة: لا تشارك أو تكشف محتويات /home/i2p/.reseed/ أبدًا
  • التحديثات المنتظمة: حافظ على تحديث حزم النظام وDocker وreseed-tools
  • راقب السجلات: راقب أنماط الوصول المشبوهة
  • تحديد المعدل: فكر في تطبيق تحديد المعدل لمنع إساءة الاستخدام
  • قواعد الجدار الناري: اكشف فقط المنافذ الضرورية (80، 443، 81 لواجهة الإدارة)
  • واجهة الإدارة: قيّد الوصول إلى واجهة إدارة Nginx Proxy Manager (المنفذ 81) على عناوين IP الموثوقة فقط

Contributing to the Network

من خلال تشغيل خادم إعادة الزرع (reseed server)، فإنك تُسهم في توفير بنية تحتية حيوية لشبكة I2P. نشكرك على دعمك لإنترنت أكثر خصوصية وتوزيعًا!

لأي أسئلة أو طلب مساعدة، تواصل مع مجتمع I2P:


تم إنشاء الدليل أصلاً بواسطة Stormy Cloud ، وتم تعديله لتوثيق I2P.

Was this page helpful?