حلّ المجتمع

تثبيت qBittorrent على ZimaOS دون تعطيل أمان واجهة الويب

A July 2025 thread where the App Store pull failed, IceWhale suggested testing ZimaOS 1.4.2 beta, and the user eventually installed LinuxServer.io qBittorrent manually. The historical workaround disabled WebUI security checks, which should not be carried forward as a default configuration.

بدأت سلسلة النقاش الأصلية في يوليو 2025 بفشل تثبيت qBittorrent من متجر التطبيقات، وانتهت بحاوية LinuxServer.io مثبّتة يدويًا. وكانت النسخة المختصرة من هذه الصفحة تنتقل سابقًا بسرعة كبيرة من «فشل السحب» إلى «استخدم LinuxServer». لكن السلسلة الكاملة تتضمن استطرادًا مهمًا متعلقًا بالإصدار: طلبت IceWhale من المستخدم اختبار ZimaOS 1.4.2 beta1 لأن سلوك تثبيت التطبيقات تحسّن فيه، إلا أن النسخة التجريبية ثُبّتت وتسببت في مشكلة جديدة متعلقة بوحدة معالجة الرسومات لدى المستخدم الذي يملك GTX 1070، فعاد المستخدم في النهاية إلى 1.4.1.

عملت حاوية qBittorrent اليدوية بشكل جيد بما يكفي للمستخدم الأصلي، لكن الحل الالتفافي التاريخي لواجهة WebUI عطّل التحقق من ترويسة المضيف وحماية CSRF. ولا ينبغي اعتماد ذلك كحل افتراضي في تثبيت حالي.

كان الفشل الأصلي مشكلة في سحب الصورة

مربع حوار تثبيت qBittorrent في ZimaOS يعرض خطأ رفض الوصول عند سحب صورة Docker
حدثت المشكلة الأصلية قبل أن يتمكن qBittorrent من بدء التشغيل أصلًا: إذ تعذّر سحب صورة التطبيق المُهيّأة.

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

اقترحت IceWhale استخدام ZimaOS 1.4.2 Beta1

طلب Zima-Giorgio من المستخدم تجربة أحدث نسخة تجريبية متاحة آنذاك، 1.4.2 beta1، لأن هذا الإصدار حسّن تجربة تثبيت التطبيقات، وقد يحل المشكلة. وعندما لم يظهر التحديث تلقائيًا، قدّم Giorgio المسار الرسمي للتحديث دون اتصال بالإنترنت لتلك النسخة التجريبية التاريخية.

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

تسببت النسخة التجريبية في مشكلة مختلفة للمستخدم

ثبّت المستخدم النسخة التجريبية، لكنه عاد لاحقًا إلى 1.4.1 لأن النسخة التجريبية، حسب وصفه، تجاهلت وحدة معالجة الرسومات GTX 1070. يوضح ذلك أن الترقية إلى نسخة تجريبية لإصلاح تطبيق واحد فقط ينبغي أن تتضمن فحوصات تراجعية لبقية الخادم.

ينبغي أن يستخدم النظام الحالي إصدار ZimaOS المستقر الحالي، ما لم يوجد سبب دعم محدد لاختبار إصدار تجريبي سابق للإصدار.

ثم ثبّت المستخدم صورة qBittorrent من LinuxServer.io

يستخدم qBittorrent الحالي من LinuxServer.io lscr.io/linuxserver/qbittorrent. وتشمل إعداداته الدائمة وإعدادات الشبكة المهمة ما يلي:

  • /config لإعدادات qBittorrent؛
  • مجلد تنزيلات على المضيف مُعيّن إلى داخل الحاوية؛
  • PUID وPGID لملكية الملفات؛
  • منفذ واجهة الويب؛
  • منفذ استماع لـ BitTorrent عبر TCP وUDP.

استخدم إعدادات حاوية qBittorrent الحالية من LinuxServer.io بدلًا من إعادة بناء إعدادات عام 2025 اعتمادًا على الذاكرة.

حافظ على التزامن بين WEBUI_PORT وتعيين منفذ Docker

تخدم الصورة الحالية واجهة الويب عادةً على المنفذ 8080. إذا أردت استخدام منفذ مضيف آخر، يمكنك تعيين ذلك المنفذ المضيف إلى خدمة الحاوية. وإذا غُيّر منفذ واجهة الويب الداخلي نفسه، فإن LinuxServer.io يتطلب WEBUI_PORT طابِق قيمة البيئة مع تعيين منفذ Docker.

يمكن أن يؤدي عدم تطابق منفذ واجهة الويب إلى فشل في الاتصال يبدو كأنه مشكلة في المصادقة أو ترويسات الأمان.

استخدم كلمة المرور المؤقتة من سجل بدء التشغيل

أشار المستخدم في المصدر بشكل صحيح إلى إمكانية العثور على كلمة المرور الأولى في السجلات. ينشئ السلوك الحالي لـ LinuxServer.io كلمة مرور مؤقتة لـ admin الحساب عند بدء التشغيل.

افتح سجل حاوية qBittorrent، واستخدم القيمة المؤقتة لتسجيل الدخول الأول، ثم عيّن فورًا كلمة مرور دائمة من واجهة الويب.

لا تُعطّل HostHeaderValidation وCSRFProtection افتراضيًا

أضاف المستخدم في المصدر تاريخيًا:

WebUI\HostHeaderValidation=false
WebUI\CSRFProtection=false

إلى ملف إعدادات qBittorrent. وأفادوا بأن التطبيق بدا يعمل بعد ذلك، لكن هذه الخيارات تُضعف عمدًا فحوصات الأمان التي تواجه المتصفح.

ينبغي أن تعالج عملية التثبيت الحالية أولًا إعدادات المنفذ الصحيح وعنوان URL لواجهة الويب وترويسات الوكيل العكسي والمصادقة. لا تجعل «تعطيل CSRF» إجابةً قياسية لمشكلة الوصول إلى واجهة الويب.

إذا كان هناك وكيل عكسي، فاضبطه بشكل صحيح

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

تستخدم حركة مرور واجهة الويب وحركة مرور نظراء BitTorrent منافذ مختلفة

المنفذ المستخدم لإدارة qBittorrent في المتصفح ليس المنفذ المستخدم لاتصالات النظراء الواردة. انشر منفذ الاستماع المختار للتورنت عبر TCP وUDP، واجعل إعداد منفذ الاستماع في qBittorrent نفسه مطابقًا له.

إذا كان الخادم خلف NAT وكانت هناك حاجة إلى اتصال وارد من النظراء، فإن تصميم الموجّه أو VPN قرار منفصل عن تعيين منافذ Docker.

اربط التنزيلات بمساحة تخزين فعلية في ZimaOS

لا تسمح بتراكم ملفات التورنت الكبيرة داخل طبقة الحاوية المؤقتة أو على قرص نظام صغير. اربط دليل التنزيلات بمساحة التخزين المقصودة في ZimaOS، وتأكد من قدرة مستخدم الحاوية على الكتابة فيها قبل بدء تنزيل كبير.

احتفظ بـ /config قبل إعادة إنشاء الحاوية

توجد تفضيلات qBittorrent وفئاته ومساراته وحالة التطبيق ضمن دليل الإعدادات الدائم. أنشئ نسخة احتياطية منه قبل تغيير الصور أو استبدال عملية نشر من متجر التطبيقات بحاوية مخصصة.

الأسئلة الشائعة حول qBittorrent على ZimaOS

هل كانت المشكلة الأصلية هي تعطل qBittorrent؟

لا. فشل التثبيت من متجر التطبيقات في مرحلة سحب صورة Docker.

لماذا عاد المستخدم من الإصدار التجريبي إلى ZimaOS 1.4.1؟

أفادوا بأن الإصدار التجريبي لم يتعامل مع بطاقة GTX 1070 لديهم كما هو متوقع.

من أين تأتي كلمة المرور الأولى لـ qBittorrent؟

تطبع حاويات LinuxServer.io الحالية كلمة مرور مسؤول مؤقتة في سجل بدء التشغيل.

هل ينبغي تعطيل الحماية من CSRF حتى تعمل واجهة الويب؟

لا، ليس كنهج افتراضي. أصلح أولًا إعدادات المنفذ والوكيل واسم المضيف والمصادقة الحالية.