الرئيسية
» مسؤول الشبكة
»
إصلاح مشكلة "خادم LDAP لا يستجيب" عند بدء تشغيل Zimbra: دليل عملي للاسترداد
إصلاح مشكلة "خادم LDAP لا يستجيب" عند بدء تشغيل Zimbra: دليل عملي للاسترداد
عندما يفشل Zimbra أثناء بدء التشغيل بسبب خطأ ما LDAP server not responding، فإن السؤال المهم ليس مجرد كيفية إخفاء الرسالة. الهدف الحقيقي هو استعادة تبعية LDAP سليمة، والتأكد من قدرة Zimbra على قراءة إعداداته مرة أخرى، وتجنب تغيير الخدمات غير ذات الصلة بينما لا يزال السبب الجذري للمشكلة مجهولاً.
يركز هذا الدليل على تحقيق هذه النتيجة. ويستخدم أوامر موثقة من Zimbra لحالة الخدمة، وفحوصات LDAP، والتكوين المحلي، والتحقق من الشهادات، وعناوين URL لخوادم LDAP المتعددة. تستخدم الأمثلة أسماء مضيف افتراضية مثل `<اسم المضيف ldap1.example.com>`؛ استبدلها بقيم من بيئة النشر الخاصة بك.
كيف ينبغي أن تبدو عملية التعافي الناجحة
قبل إجراء أي تغيير، حدد الهدف النهائي. يكون الإصلاح مقنعاً عندما تتحقق جميع الشروط التالية:
ldap statusيُبلغ عن slapdعملية قيد التشغيل على عقدة LDAP.
zmcontrol statusتشير التقارير إلى أن LDAP وخدمات Zimbra التابعة لها تعمل على المضيف المتأثر.
يتم حل اسم مضيف LDAP إلى العنوان المتوقع من عقدة Zimbra المتأثرة.
يمكن الوصول إلى منفذ LDAP المُهيأ.
إذا تم استخدام بروتوكول TLS، فسيتم التحقق من صحة سلسلة الشهادات وسيتم التخلص من خطأ TLS السابق.
في عملية نشر متعددة الخوادم، ldap_urlوتحتوي ldap_master_urlعلى مضيفات LDAP صالحة ونشطة بالترتيب المقصود.
بعد إعادة التشغيل، /var/log/zimbra.logلم يعد يظهر فشل اتصال LDAP المتكرر.
إذا استمر فشل أحد هذه الفحوصات، فاستمر في استكشاف أخطاء تلك الطبقة بدلاً من إعادة تشغيل مجموعة Zimbra بأكملها بشكل متكرر.
مرجع سريع: الأعراض والفحص التالي
الأعراض
الفحص التالي الأكثر فائدة
ldapتوقف العرض
قم بتشغيل الجهاز ldap statusوفحصه /var/log/zimbra.log.
لا يتم حل اسم المضيف
تحقق من نظام أسماء النطاقات (DNS) /etc/hostsوالقيمة الموجودة فيه ldap_url.
يتم حل اسم المضيف ولكن المنفذ يفشل
تحقق من التوجيه، وقواعد جدار الحماية، ومنافذ الاستماع، والمنفذ المُكوّن.
تظهر أخطاء TLS أو PKIX
تحقق من سلسلة شهادات Zimbra وملفات CA.
لا يزال خادم LDAP قديمًا في التكوين
صحيح ldap_urlو ldap_master_url.
يبدأ LDAP لكن الخدمات الأخرى لا تزال تفشل
أعد تشغيل Zimbra وأعد فحص سجلات الخدمة المحددة بدلاً من افتراض أن LDAP لا يزال هو السبب.
1. تأكد مما إذا كان بروتوكول LDAP نفسه معطلاً
قم بإجراء فحوصات الحالة بصفتك zimbraالمستخدم:
su - zimbra
zmcontrol status
ldap status
توصي وثائق استكشاف أخطاء LDAP في Zimbra بالتحقق من slapdتشغيل العملية، ثم التأكد من تعرف Zimbra عليها ldap status. إذا لم يكن LDAP يعمل محليًا، فابحث في عملية LDAP قبل استكشاف أخطاء البريد الإلكتروني أو خادم البريد أو الخادم الوكيل أو خدمات الويب. يُعد LDAP أحد متطلبات التكوين الأساسية، لذا قد تفشل الخدمات اللاحقة ببساطة لعدم قدرتها على قراءة بيانات التكوين.
ابدأ بالتأكد مما إذا كان LDAP نفسه متوقفًا بدلاً من التعامل مع كل فشل في بدء التشغيل اللاحق كمشكلة منفصلة.
في وثائق Zimbra 10 الخاصة بالخوادم المتعددة، ldap_urlيُحدد خوادم LDAP التي يجب على العقدة الاستعلام عنها، بينما ldap_master_urlيُحدد نقطة النهاية الرئيسية أو مجموعة الخوادم الرئيسية المستخدمة للكتابة. كما تُشير وثائق Zimbra إلى أن عناوين URL للنسخ المتماثلة يجب أن تظهر عادةً قبل عنوان URL الرئيسي في ldap_url، مع الاحتفاظ بعنوان URL الرئيسي في القائمة.
يُعدّ هذا الفحص بالغ الأهمية، لا سيما بعد ترحيل الخادم، أو استبدال بروتوكول LDAP، أو إعادة ترقيم عناوين IP، أو استعادة البيانات بعد الكوارث، أو الترقية التدريجية. فخادم LDAP سليم تمامًا لا يُمكنه مساعدة عقدة Zimbra التي لا تزال تحاول الاتصال باسم مضيف مُهمَل.
تحقق من تحليل الاسم وإمكانية الوصول إلى بروتوكول TCP
إذا أعاد نظام أسماء النطاقات (DNS) عنوانًا خاطئًا، فقم بتصحيح عملية تحليل الاسم أولًا. إذا كان نظام أسماء النطاقات صحيحًا ولكن لا يمكن الوصول إلى المنفذ، فابحث في توجيه الشبكة، وجدران الحماية الخاصة بالجهاز، ومجموعات الأمان، أو مستمع خادم LDAP. لا تُغيّر كلمات مرور LDAP لمجرد انتهاء مهلة اتصال TCP؛ إذ يحدث انتهاء المهلة قبل أن يتم تقييم بيانات اعتماد الربط.
قم بمقارنة نقطة نهاية LDAP المُكوّنة مع حل DNS الفعلي وإمكانية الوصول إلى المنفذ قبل تعديل إعدادات المصادقة.
يشترط دليل Zimbra v10 الحالي لتثبيت الخوادم المتعددة صراحةً أن تتصل العقد غير المتصلة بـ LDAP بخادم LDAP الرئيسي أثناء عملية التهيئة، وينص على أنه لا يمكن إتمام التثبيت إذا كان الخادم غير متاح. راجع دليل تثبيت Zimbra Daffodil v10 للخوادم المتعددة .
3. اقرأ سجل الأعطال قبل تحديد ما يجب إصلاحه
استخدم سجل Zimbra المركزي لتحديد فئة الفشل:
tail -n 100 /var/log/zimbra.log
ابحث عن نمط متكرر بدلاً من سطر واحد. تشمل الفئات الشائعة انقطاع الاتصال، ورفض الاتصال، وأخطاء اسم المضيف، وفشل الربط، أو أخطاء التحقق من صحة بروتوكول TLS. تُعدّ الفئة مهمة لأن كل فئة تتطلب إصلاحًا مختلفًا.
انتهاء المهلة أو عدم وجود مسار: ركز على نظام أسماء النطاقات (DNS)، أو التوجيه، أو جدار الحماية، أو المضيف المعطل.
تم رفض الاتصال: المضيف قابل للوصول ولكن لا يوجد شيء يقبل الاتصالات على المنفذ المُكوّن، أو أن جدار الحماية المحلي يرفضها بنشاط.
خطأ في التحقق من صحة TLS/SSL: تحقق من الشهادات وسلاسل الثقة.
خطأ في المصادقة أو الربط: عندها فقط قم بالتحقق من كلمات مرور LDAP أو بيانات اعتماد النسخ المتماثل.
عندما تكون الشهادات هي المشكلة
وثّقت زيمبرا حالات فشل اتصال LDAP بسبب انتهاء صلاحية شهادة المرجع المصدق الجذرية أو الوسيطة. ومن أوامر التحقق المفيدة للشهادات التجارية ما يلي:
/opt/zimbra/bin/zmcertmgr verifycrt comm commercial.key commercial.crt commercial_ca.crt
قم بتشغيله من الدليل الذي يحتوي على ملفات الشهادات التجارية ذات الصلة، والتي توجد عادةً في المسار التالي /opt/zimbra/ssl/zimbra/commercial/: . في حالة فشل التحقق، قم بتصحيح سلسلة الشهادات بدلاً من تعطيل التحقق من TLS كحل سريع.
استخدم رسالة السجل لاختيار مسار الإصلاح؛ لا ينبغي التعامل مع فشل سلسلة TLS على أنه مشكلة في نظام أسماء النطاقات أو كلمة المرور.
في حالة النشر باستخدام النسخ المتماثلة، استخدم بنية الشبكة الموثقة لبيئتك بدلاً من تقليص القائمة إلى خادم واحد. توفر وثائق Zimbra v10 أمثلةً تُدرج فيها النسخ المتماثلة أولاً للقراءة، مع بقاء الخادم الرئيسي مُدرجًا. أما بيئات الخوادم الرئيسية المتعددة فلها متطلبات ترتيب خاصة بها.
لا تنسخ عناوين URL هذه كمثال حرفيًا. تأكد أولًا من البروتوكول واسم المضيف والمنفذ ودور الخادم الرئيسي/النسخة الاحتياطية المقصود. إذا كان نظامك يستخدم LDAPS أو StartTLS، فحافظ على تصميم الأمان بدلًا من التبديل تلقائيًا إلى LDAP العادي لضمان نجاح بدء التشغيل.
5. أعد التشغيل مرة واحدة، ثم تحقق من صحة سلسلة التبعية بأكملها
بعد تصحيح السبب الجذري الفعلي، أعد تشغيل زيمبرا:
zmcontrol restart
ثم تحقق من:
ldap status
zmcontrol status
تنتهي عملية التعافي الجيدة بتشغيل LDAP وعودة خدمات Zimbra التابعة إلى حالة صحية بعد إعادة تشغيل مُتحكم بها.
إعادة التشغيل التي تُغيّر رسالة الخطأ فقط لا تكفي. أعد التحقق /var/log/zimbra.logمن حالات فشل الاتصال المتكررة، واختبر عمليات الإدارة أو المستخدم العادية المناسبة لدور الخادم.
إذا كنت تستخدم نسخ LDAP أو عدة خوادم رئيسية، فقد يكون الخادم متاحًا حتى في حال وجود خلل في عملية النسخ. توثق Zimbra أداة zmreplchkالتحقق من صحة النسخ.
/opt/zimbra/libexec/zmreplchk
بالنسبة للأنظمة متعددة المصادر، تصف وثائق Zimbra النتيجة السليمة بأنها حالة مزامنة مع رمز خطأ 0. يعتمد إجراء الاسترداد الدقيق على ما إذا كان لديك نسخ متماثل أحادي المصدر، أو نسخ متماثل متعدد المصادر، أو عملية ترحيل جارية.
توقف عن التعامل مع هذه المشكلة على أنها مجرد مشكلة اتصال بسيطة عندما يكون أي مما يلي صحيحًا:
slapdلن يبدأ التشغيل على الرغم من أن اسم المضيف وتكوين المنفذ صحيحان.
يسجل السجل أخطاء قاعدة البيانات الخلفية أو مخزن بيانات LDAP بدلاً من أخطاء الشبكة.
تبقى عملية النسخ غير متزامنة حتى بعد استعادة الاتصال.
تختلف كلمات المرور بين خوادم LDAP الرئيسية أو النسخ المتماثلة بعد عملية الترحيل.
لا يمكن لمستمع LDAP الربط لأن اسم المضيف المُكوّن لم يعد ينتمي إلى الخادم.
في هذه الحالة، قد تتعلق المشكلة باستعادة قاعدة بيانات LDAP، أو بيانات اعتماد النسخ المتماثل، أو حالة الترحيل، أو هوية الخادم، بدلاً من مجرد حالة "عدم استجابة الخادم". تشير وثائق ترحيل Zimbra تحديدًا إلى أن عدم تطابق أسماء النطاقات (DNS)، وأسماء المضيفين، وكلمات مرور التكوين المحلي غير الصحيحة، والمراجع القديمة لخوادم LDAP القديمة، كلها عوامل قد تمنع بدء تشغيل LDAP.
ما لا يجب فعله
لا تقم بحذف ملفات قاعدة بيانات LDAP كخطوة مبكرة لحل المشكلات.
لا تقم بإعادة تعيين كلمات مرور LDAP قبل إثبات أن طبقة المصادقة هي الطبقة الفاشلة.
لا تقم بإزالة الخادم الرئيسي من كل عنوان URL لـ LDAP لمجرد أن نسخة واحدة تستجيب.
لا تقم بتعطيل التحقق من بروتوكول TLS لمجرد إنجاح الاتصال.
لا تقم بتشغيل البرنامج بشكل متكرر zmcontrol restartدون قراءة السجلات الناتجة.
قائمة التحقق النهائية للتعافي
يتم حل اسم مضيف LDAP إلى المضيف المقصود.
يمكن الوصول إلى منفذ LDAP من عقدة Zimbra المتأثرة.
ldap_urlومطابقة ldap_master_urlالبنية الحالية.
تكون سلسلة شهادات TLS صالحة في حالة استخدام LDAP المشفر.
ldap statusالتقارير slapdقيد التشغيل.
zmcontrol statusيُظهر تشغيل الخدمات المطلوبة.
تتم عملية النسخ بشكل متزامن عند الاقتضاء.
/var/log/zimbra.logلم يعد يعرض حالات فشل LDAP المتكررة.
يتمثل القيد الرئيسي لهذه الطريقة في أن "عدم استجابة خادم LDAP" هو عرضٌ ناتج عن تبعية، وليس سببًا جذريًا واحدًا. فقد ينتج عن تعطل عملية LDAP، أو عناوين URL قديمة، أو خلل في نظام أسماء النطاقات (DNS)، أو منافذ محظورة، أو فشل في الشهادات، أو مشاكل في النسخ المتماثل، أو بيانات اعتماد غير صحيحة. لذا، فإن النهج الأمثل هو التحقق من سلامة كل طبقة على حدة، وتغيير الطبقة التي بها عطل فقط.