Yeni VPN girişləri sertifikatlar etibarlı ikən uğursuz olur: CRL-i yoxlayın
Etibarlı müştəri sertifikatı ilə vaxtı keçmiş ləğv siyahısı iki fərqli saatda işləyən iki fərqli obyektdir. Serverin yüklədiyi siyahını oxuyun, sonra onu yenidən yaradın.
Ay miqdarı qalan sertifikatlar və dərhal uğursuz olan girişlər iki fərqli saatda işləyən iki fərqli obyektə işarə edir. Server bağlantıları rədd edir, çünki müraciət etdiyi ləğv edilmiş sertifikatlar siyahısı öz bitmə tarixini keçib, istifadəçilərin sertifikatları köhnəldiyi üçün deyil. İstifadəçi sertifikatının yenilənməsi o siyahı üçün heç nə etmir.
İki cədvəli ayırmaq bütün diaqnozdur və bu, düzəlişin necə olmalı olduğunu dəyişir.
İki saat, və onlardan yalnız biri sertifikatdır
Sertifikat etibarlılıq pəncərəsi daşıyır. Sertifikat ləğv siyahısı öz pəncərəsini, üstəlik buraxan tərəfi və imzanı daşıyır və yoxlayıcılar növbəti yenilənmə vaxtı keçmiş siyahıya etibar etməkdən imtina edir. Bu baş verəndə müştəri tamamilə etibarlı sertifikat təqdim edir, server isə bağlantını yenə də siyahı ilə bağlı mesajla kəsir. İstifadəçilər bu mesajı 'sertifikatın vaxtı keçdi' kimi oxuyur və bu, yenilənmə sorğusunu yanlış yerə göndərir.
İki obyektin sahibləri də fərqlidir: sertifikat onu buraxan CA-dan gəlir, siyahı isə həmin CA-nı idarə edən şəxs tərəfindən cədvəl üzrə yaradılır. İstifadəçi onu yeniləyə bilməz və sertifikatların yenidən buraxılması onu uzada bilməz.
Xidmətin həqiqətən yüklədiyi siyahını oxuyun
Gözlədiyiniz fayldan deyil, işləyən konfiqurasiyadan başlayın. crl-verify yolu mütləq ola bilər, profillə nisbi ola bilər və ya obrazın içinə yerləşdirilmiş surət ola bilər və yoxlayıcı həmin surəti oxuyur. Onu yerində openssl crl -in /etc/openvpn/crl.pem -noout -issuer -lastupdate -nextupdate ilə yoxlayın və tarixləri serverin saatı ilə müqayisə edin.
Sonra faylın həqiqətən istifadədə olan fayl olduğunu təsdiqləyin: imzasını openssl crl -in /etc/openvpn/crl.pem -CAfile /etc/openvpn/ca.crt -noout ilə yoxlayın, bu sahələri səssizcə çap etmək əvəzinə yoxlama nəticəsi bildirir. Başqa bir CA tərəfindən imzalanmış siyahı və ya ikinci qovluqda qalmış köhnə surət, tam olaraq vaxtı keçmiş siyahı kimi uğursuz olur.
Sıfırdan deyil, ləğv verilənlər bazasından yenidən yaradın
Yeni siyahı CA-nın cari ləğv verilənlər bazasından, təsdiqlənmiş imzalama prosesi ilə gəlməlidir. Boş siyahı yaratmaq və ya indeksin köhnə ehtiyat nüsxəsindən yenidən yaratmaq, o ehtiyat nüsxədən sonra əlavə edilmiş hər kimliyi səssizcə ləğvdən çıxarır. Bu, giriş kəsintisini təhlükəsizlik reqressiyasına çevirir və heç kim fərq etmir, çünki simptom yox olur.
Yaratma addımını CA alətlərinin qalanı ilə birlikdə versiya nəzarətində saxlayın ki, interval və imzalama açarı yadda saxlanmaq əvəzinə sənədləşdirilsin. Əmri, imzalayanı və dərc hədəfini göstərən bir runbook qeydi kifayətdir. Onda növbətçi olan hər kəs hansı indeks faylının məruz qaldığını təxmin etmədən yenidən yarada bilər. Siyahının seriya nömrəsini və növbəti yenilənmə vaxtını yerləşdirmə qeydi ilə birlikdə saxlayın.
Yoxlayıcının baxdığı yerə yerləşdirin
Yeni siyahını xidmətin oxuduğu yola köçürün, sahibliyi və rejimi elə qurun ki, xidmət hesabı onu oxuya bilsin, başqaları isə bilməsin, sonra sənədləşdirilmiş davranışa uyğun olaraq yenidən yükləyin və ya yenidən başladın. Daemon siyahını başlanğıcda keşləyirsə, faylı yenidən yükləmədən dəyişdirmək işləyən prosesin görəcəyi heç nəyi dəyişmir. Yenidən yükləmədən sonra prosesin bildirdiyi vaxt möhürünü təsdiqləyin.
Bir neçə xidmət müştəriləri yoxlayırsa, hər birinə yerləşdirin. Bir son nöqtəni yeniləyib digərini köhnə surətlə buraxmaq yalnız ikinciyə düşən istifadəçilər üçün görünən nasazlıq yaradır. Həmin son nöqtələrin qısa siyahısını eyni runbook-da saxlayın. Yerləşdirmədən sonra surətin yetişdiyini güman etmək əvəzinə hər birinin bildirdiyi siyahı tarixini yoxlayın.
Növbəti son tarixi keçməzdən əvvəl görünən edin
Daha uzun dərc intervalı bu hadisənin tezliyini azaldır, amma bir proses yaratmır. İntervalı əməliyyatçının siyasətindən seçin, sonra yerləşdirilmiş siyahının növbəti yenilənmə sahəsinə yenidən yaratmaq və yerləşdirmək üçün kifayət qədər ehtiyat vaxtla siqnal verin. Yerləşdirilmiş surətə siqnal verin, CA hostuna deyil, çünki uğursuz olan yerləşdirilmiş surətdir.
Yerləşdirmədən sonra hər iki istiqaməti yoxlayın: icazəli istifadəçi qoşulur və tanınmış ləğv edilmiş kimlik yenə də uğursuz olur. İkinci yoxlama natamam yenidən yaratmanı tutan yoxlamadır və tam bu məqsəd üçün saxladığınız sınaq profilinə qarşı bir əmr tələb edir.