عن المشروع
rustdesk-server-starry هي إضافة غير رسمية يديرها المجتمع لمشروع rustdesk/rustdesk-server الرسمي. تركز على HBBS (خادم المعرف/الإشارة) وتضيف اختيار Relay الموجّه بالسياسات بالإضافة إلى توافق النقل مع العملاء المصادق عليهم، مع تجنب إنشاء نسخة منشقة دائمة من المصدر الأصلي.
كيفية عمل الإضافة
يبدأ كل بناء من مراجعة رسمية محددة تمامًا لخادم RustDesk. يقوم النص scripts/apply_overlay.py بالتحقق من نقاط الارتساء الثابتة للمصدر، وحقن وحدات Starry، وهو مصمم ليكون خاملًا: تطبيقه مرة ثانية يجب ألا ينتج أي تغييرات إضافية. إذا أدت تغييرات هيكلية من المصدر الأصلي إلى إبطال نقطة ارتساء أو اختبار، يتوقف النشر بدلاً من شحن خادم مُرقّع جزئيًا.
القدرات الموصوفة في README
- اختيار Relay مرتب باستخدام حقائق البلد والمدينة والتقسيم الفرعي ورقم النظام المستقل (ASN) ومزود خدمة الإنترنت (ISP) لكلا الطرفين.
- تنزيل MMDB مُتحقق منه، واستبدال، واحتفاظ، وتحديث مجدول.
- مفاوضات Secure TCP والنقل المشفر المتوافق مع عميل RustDesk على منفذ HBBS TCP الأصلي 21116.
- إشارات WebSocket اختيارية دائمة على /ws/id، بما في ذلك جلسات WSS-to-WSS وWSS-to-native Relay.
- تصحيح صحة /ws/relay بالتحقق من الشهادات.
- استقصاء نشط لمرشحي Relay من Akari فقط مع RTT/تذبذب/فقدان ثنائي الطرف وتحميل موثوق لـ HBBR، وهستيريزيا ذاكرة البادئة، وتراجع احتياطي لـ Relay واحد قديم.
- تفويض Ed25519 قصير الأجل ومعطل افتراضيًا لـ Akari FastCompat وFastMediaV1 المرتبط بالدور، مع مستوى بيانات UDP منفصل خاضع للإشراف لـ HBBR AKR1.
- عقود إيجار تفعيل الملف الشخصي الآمنة من حيث الجيل لـ Akari، بما في ذلك إقرار جاهز مطابق، وإلغاء تفعيل العقد الحالي صراحةً، وإعادة تسجيل سريعة موثوقة ومحدودة، وافتراضات متوافقة مع العميل الرسمي.
- تفعيل آخر حالة جيدة للمخطط v5 مع الجيل، والملخص، وإقرارات متزامنة للأنظمة الفرعية.
- تدقيق/فرض JWT اتصال Ed25519 صارم اختياري لـ PunchHoleRequest وRequestRelay المباشر على TCP الأصلي، وSecure TCP، وWSS؛ بدء UDP غير مدعوم صراحةً.
- تمهيد SP1 Control-Agent/Relay، وتسجيل Relay محدود، وهويات دائمة، وتصدير تراجع من v5 إلى v4 بدون آثار جانبية.
- لقطات Relay غير قابلة للتغيير، ومحاكاة تخصيص بدون آثار جانبية، وControl Agent منفصل لنظام Linux محمي بـ mTLS، وJWT خدمات ذات نطاق، ومعاملات تكوين ذرية.
حدود المكونات
- HBBS: معدّل بواسطة الإضافة؛ شغل أمر binary أو صورة hbbs الخاصة بـ Starry.
- HBBR: Relay موثوق بالإضافة إلى UDP AKR1 الاختياري؛ يحافظ على مسار نقل بايتات TCP/WS الأصلي، ويجيب على استقصاءات الجودة العامة دون حمل، ويعرض الحالة التفصيلية فقط من خلال القياسات عن بعد المصادق عليها، ويوجه اختياريًا حزم بيانات Akari AKF1 المشفرة بعد منح الأدوار.
- Control Agent: مكون Starry اختياري، خاص بنظام Linux فقط في الإصدار 1.3؛ حافظ على تحكم HBBS المحلي عبر حلقة الاسترجاع (loopback) واعرض الوكيل فقط على مسار إدارة خاص مع mTLS وJWT خدمات ذات نطاق. كتابة التكوين معطلة افتراضيًا.
- خادم الحساب/واجهة برمجة التطبيقات: غير مشمول. يتطلب تسجيل الدخول للحساب، ودفاتر العناوين، وبيانات الجهاز، والإدارة تنفيذ واجهة برمجة تطبيقات منفصل ومحدد.
يؤكد README أن تسجيل الدخول عبر واجهة برمجة تطبيقات الحساب، واتصال إشارة HBBS، وواجهة Starry Control الاختيارية، ومسار بيانات HBBR هي طبقات بروتوكول منفصلة. لا تحول Starry واجهة برمجة تطبيقات طرف ثالث إلى Relay ولا تستبدل عميل RustDesk. مستمع UDP FastMedia الاختياري مستقل عن تدفق HBBR العادي، الذي يبقى دائمًا التراجع الموثوق.
حالة الإصدار
الإصدار الحالي للتطوير هو معاينة تصحيحية للإصدار 1.3.1. تُنشر صور Docker على ghcr.io/q1ngyang/rustdesk-server-starry. مصفوفة المرشحين هي Docker linux/amd64 بالإضافة إلى ثنائيات Linux x86_64 وحزم DEB لـ amd64. دعم ARM هو توافق مصدر بأفضل جهد؛ Windows هو بناء تجريبي غير حاجز، ولا يعد أي منهما أثرًا موعودًا للإصدار 1.3.1. المعاينة اختيارية، وتُبقي كلا مفتاحي Fast معطلين افتراضيًا، وتُنشر فقط كمسودة سابقة للإصدار على GitHub وصورة معاينة متدحرجة. لا يزال اعتماد الإصدار المستقر يتطلب بوابات إصدار FastMedia شاملة من النهاية إلى النهاية وعلى أجهزة حقيقية.
التوثيق
اللغة الإنجليزية هي لغة التوثيق الافتراضية، مع وجود مقابل بالصينية المبسطة لكل دليل سردي. ملفات التكوين والتنسيق الجاهزة للنسخ مشتركة بين اللغتين. يغطي فهرس التوثيق المصنف المصادر المحلية، ودليل الحاويات، وملاحظات الإصدار، والمراجع التقنية. تشمل الأدلة البدء السريع، واستخدام صور Docker، ونشر Docker، والنشر الأصلي، والنشر متعدد العقد، والوكيل العكسي وTLS، وتكوين العميل، وتكامل الحساب/واجهة برمجة التطبيقات، ومرجع التكوين، ومصادقة الاتصال، وControl Agent، وعقد إيجار تفعيل الملف الشخصي v1، وتفويض Fast Relay v1، وFastMedia Relay UDP v1، وقران Starry v1، وأساسيات وقواعد GEO المتقدمة، والعمليات والتحقق، واستكشاف الأخطاء وإصلاحها، والترقية والتراجع، والهندسة المعمارية والبناء.
الترخيص وإخلاءات المسؤولية
يوزع مصدر RustDesk Server الرسمي وإضافة Starry تحت رخصة GNU Affero العامة v3.0. تُبنى الثنائيات والصور المنشورة من مراجعة المصدر الأصلي المثبتة المقابلة بالإضافة إلى هذه الإضافة. ينص المشروع على أنه غير مرتبط بـ RustDesk، أو MaxMind، أو أي مزود مرآة MMDB، أو أي مزود خدمة ذكاء اصطناعي، ولا يحظى بتأييدهم. لا تتضمن الصورة قاعدة بيانات GeoLite2؛ يجب على المشغلين اختيار مصادر بيانات قانونية وموثوقة والامتثال لترخيصاتها. تم توليد أو مراجعة بعض الأجزاء من الكود والتوثيق بمساعدة الذكاء الاصطناعي وتبقى خاضعة لنفس ترخيص المشروع دون ضمانات إضافية.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.