فشل إبطال الشهادات: أي مضيف لا يستطيع الوصول إلى ماذا
تُنفَّذ فحوص الإبطال على الجهاز الذي يتحقق. حدّد نقطة توزيع CRL، واختبر وصول ذلك المضيف، ثم افصل قائمة قديمة عن شهادة مُبطَلة.
قد تظل الشهادات داخل نطاق صلاحيتها بينما لا يزال الـ VPN يبلّغ عن فشل في المصادقة، فيستنتج أحدهم أن الشهادة مُبطَلة. هذه ثلاث حقائق مختلفة. يجب أن يجلب الجهاز الذي يقوم بالتحقق بيانات الإبطال من نقطة نشر مذكورة داخل الشهادة نفسها. وعندما يتعذّر على ذلك الجهاز الوصول إلى النقطة، يفشل الفحص لأسباب لا علاقة لها بحالة الشهادة.
المتحقِّق هو من يملك مسار الجلب
ابدأ بتحديد المتحقِّق. عندما يفحص حاسوب محمول شهادة البوابة، فإن الحاسوب هو من ينفّذ الجلب؛ وعندما تفحص البوابة شهادة عميل، فإن البوابة هي من ينفّذه. ويمكن لخدمة مصادقة في الخلفية أن تضيف متحقِّقًا ثالثًا بموقعه الشبكي الخاص. لكل واحد مسار مختلف إلى الإنترنت وإعداد وكيل مختلف. والأدلة المجمّعة على محطة عمل المسؤول لا تقول شيئًا عن خادم داخل منطقة منزوعة السلاح.
دوّن الشهادة، والمتحقِّق، ووقت المحاولة، ورمز الحالة الدقيق قبل تغيير أي شيء.
اقرأ نقطة النشر من الشهادة
تذكر الشهادة أين تعيش حالتها. اقرأ تلك الحقول بدلاً من تخمين عنوان الـ CA.
openssl x509 -in gateway.cer -noout -text | grep -A3 "CRL Distribution Points"
openssl x509 -in gateway.cer -noout -text | grep -A2 "Authority Information Access"يسرد الامتداد الأول نقاط توزيع CRL، ويسرد الثاني طرق الوصول إلى معلومات الجهة المُصدرة، والتي قد تشمل حالة OCSP وجلب شهادة الجهة المُصدرة. هذه آليات مختلفة، ومستجيب OCSP ليس ملف CRL. وغالبًا ما يكون مضيف النشر خادم ويب عاديًا لا جهاز الـ CA، لأن الجهة المُصدرة غير المتصلة يمكنها توقيع CRL يوزّعه خادم آخر. لذلك فإن قاعدة جدار حماية توصف بأنها وصول إلى الـ CA غامضة جدًا بحيث لا يمكن تنفيذها أو مراجعتها.
اختبر الجلب من الجهاز الذي يتحقق
نفّذ اختبار الجلب في البيئة التي تقوم بالتحقق فعليًا، بمواد شهادات معتمدة ودون مفاتيح خاصة.
certutil -urlfetch -verify .\client-test.cer
curl -sS -o /dev/null -w "%{http_code}\n" http://crl.example.com/ca.crlيتحقق تشغيل certutil من السلسلة ويبلّغ عن عمليات جلب عناوين URL التي نجحت أو فشلت، بينما يختبر نداء curl عنوان نشر واحدًا من المضيف نفسه ولا يعيد سوى رمز حالة. فشل الجلب من عنوان يمكن الوصول إليه يشير إلى مشاكل في المحتوى أو التوقيع؛ وخطأ الاتصال يشير إلى التوجيه أو DNS أو الوكيل. احتفظ بالنتيجتين، لأن نجاح عملية جلب واحدة لا يثبت أن السلسلة كلها صالحة للاستخدام. غيّر المضيف والمسار في المثال إلى نقطة التوزيع الموجودة في الشهادة.
افصل البيانات المفقودة عن الحالة المُبطَلة
تبدو أربع نتائج متشابهة من الخارج: النقطة غير قابلة للوصول، أو القائمة قديمة، أو القائمة موقّعة من جهة مُصدرة خاطئة، أو الشهادة مُبطَلة فعلاً. النتيجة الأخيرة وحدها هي نتيجة حالة، وهي وحدها ما يبرّر إزالة الوصول. ويزيد التخزين المؤقت الأمر تعقيدًا، لأن البيانات المجلوبة سابقًا قد تخفي مسار نشر معطوبًا حتى التحديث التالي. أما تعطيل فحص الإبطال أو حذف شهادات غير ذات صلة أو إعادة تشغيل البوابة فكلها بدائل عن التشخيص وليست تشخيصًا.
بعد الإصلاح، افرض مصادقة جديدة وتأكد من نجاح جلب الحالة المقصودة. وحيث توجد هوية اختبار مضبوطة، تأكد من أنها ما تزال مرفوضة، لأن توفر الخدمة الذي يزيل الفحص ليس إصلاحًا.