حلّ ديسكورد

يعمل Duplicati على CasaOS لكن تسجيل الدخول يفشل: تحقّق من متغيرات كلمة المرور

A CasaOS user set SETTINGS_ENCRYPTION_KEY and a web-service password, saw Duplicati load, but still could not authenticate to the web interface.

الإصلاح الأكثر احتمالًا: يستخدم Duplicati في Docker المتغير DUPLICATI__WEBSERVICE_PASSWORD—بشرطتي سفلية—لكلمة مرور واجهة المستخدم. أما SETTINGS_ENCRYPTION_KEY فيشفّر الإعدادات الحساسة في قاعدة البيانات؛ وليس كلمة المرور التي تكتبها في المتصفح.

استخدم المتغيرين لمهمتين مختلفتين

environment:
  SETTINGS_ENCRYPTION_KEY: "مفتاح-عشوائي-طويل"
  DUPLICATI__WEBSERVICE_PASSWORD: "كلمة-مرور-الواجهة"

يوثّق مستند متغيرات الأسرار في Docker الخاصة بـ Duplicati هذا الفصل بينهما.

أعد إنشاء الحاوية بعد تعديل البيئة

تحتفظ الحاوية قيد التشغيل ببيئة التشغيل التي بدأت بها. أعد إنشاءها بعد تغيير قيم compose:

docker compose up -d --force-recreate

ثم تحقّق من أسماء المتغيرات من دون عرض قيم الأسرار:

docker inspect duplicati --format '{{range .Config.Env}}{{println .}}{{end}}' | grep -E 'DUPLICATI|SETTINGS'

تحقّق من حماية اسم المضيف

إذا نجح الوصول عبر عنوان IP المباشر بينما فشل عبر اسم المضيف أو الوكيل العكسي، فاضبط أسماء المضيفين المسموح بها:

DUPLICATI__WEBSERVICE_ALLOWED_HOSTNAMES=backup.example.com

يعطّل الحرف البديل * الحماية، وليس الخيار الافتراضي المفضّل.

لا تخلط بين التشفير والمصادقة

يحمي SETTINGS_ENCRYPTION_KEY بيانات الاعتماد المخزّنة في قاعدة بيانات Duplicati. احتفظ بنسخة احتياطية منه بأمان، لأن فقدانه قد يجعل الإعدادات المشفّرة غير متاحة بعد الترحيل.

إذا استمر فشل تسجيل الدخول

  • تحقّق من عدم وجود متغير قديم ومتعارض لكلمة المرور؛
  • اقرأ سجلات الحاوية بعد إعادة إنشائها؛
  • اختبر عنوان IP المباشر للشبكة المحلية قبل الوكيل؛
  • تأكّد من أن المتصفح يصل إلى الحاوية والمنفذ المتوقعين؛
  • لا تحذف قاعدة بيانات Duplicati كخطوة أولى.

يساعد سير عمل النسخ الاحتياطي والمزامنة على التمييز بين النسخ الاحتياطي والمزامنة. ويساعد كتالوج تطبيقات ZimaOS على مقارنة أدوات النسخ الاحتياطي.

بالنسبة إلى تخزين النسخ الاحتياطية على عدة محركات، يُعد ZimaCube 2 منصة عتادية مناسبة.

لماذا تهم الشرطتان السفليتان؟

يحوّل Duplicati خيارات سطر الأوامر إلى متغيرات بيئية عبر استبدال بادئة الخيار بـ DUPLICATI__. أما المتغير المشابه ظاهريًا ذو الشرطة السفلية الواحدة فليس الإعداد نفسه. وهذه مشكلة شائعة في الحاويات، لأن واجهة المستخدم تظل محمّلة حتى عندما لا يكون خيار المصادقة المقصود قد طُبّق.

تحقّق من الحاوية النشطة، وليس نموذج CasaOS فقط

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

راقب السجلات أثناء محاولة تسجيل الدخول

docker logs -f duplicati

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

اختبر عنوان IP المباشر قبل الوكيل العكسي

ادخل مؤقتًا إلى Duplicati باستخدام عنوان IP المحلي لمضيف CasaOS والمنفذ المنشور. إذا نجح ذلك بينما لم ينجح النطاق، فركّز على أسماء المضيفين المسموح بها ورؤوس الوكيل العكسي بدلًا من إعادة تعيين بيانات الاعتماد.

احتفظ بمفتاح التشفير أثناء الترحيل

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

تجنّب إصلاحات كلمات المرور التدميرية أولًا

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

الأسئلة الشائعة

هل SETTINGS_ENCRYPTION_KEY هي كلمة مرور تسجيل الدخول الخاصة بي؟

لا. استخدم DUPLICATI__WEBSERVICE_PASSWORD لمصادقة واجهة الويب.

لماذا لم تصبح كلمة المرور التي غيّرتها سارية؟

قد تكون الحاوية القديمة ما زالت تستخدم بيئتها السابقة. أعد إنشاءها.