RSA izahındakı hərflər bir PKI alətinin payladığı faylları deyil, bir obyektin içindəki sahələri adlandırır. Şəxsi açar faylı elə bir struktur saxlayır ki, onun ilk sahələri açıq, sonrakı sahələri isə tuneli bağlayan maşından heç vaxt çıxmamalıdır. Bu iki fakt arasında hansı faylın hansı suala cavab verdiyinə dair praktik sualların çoxu yerləşir. Bu təlimat əvvəlcə strukturu, sonra isə onu tökmədən yoxlayan əmrləri oxuyur.

Sadə ədədləri axtarmazdan əvvəl açarın RSA olduğunu təsdiqləyin

Sertifikat hansısa açarın mövcud olduğunu və imzalandığını sübut edir; açarın RSA olduğunu sübut etmir. Sistemlər elliptik əyrilər və ya Ed25519 üzərində qurula bilər və eyni qovluq düzümü hamısına xidmət edir. Heç vaxt orada olmamış sadə vuruqları axtarmağa başlamazdan əvvəl alqoritmi yoxlayın.

Bu üç yalnız-oxuma əmri suala cavab verir və alətin versiyasını qeyd edir.

openssl version
openssl x509 -in vpn-client.crt -noout -text
openssl pkey -in vpn-client.key -noout -text

Versiya vacibdir, çünki seçim adları əsas buraxılışlar arasında yer dəyişib. Sertifikat çıxışında açıq açar alqoritmi sətrini və açar ölçüsünü tapın; açar çıxışında isə RSA açarı modul və açıq eksponent çap edir. Elliptik əyri açarı bunun əvəzinə adlandırılmış əyri çap edir və heç bir axtarış ondan n və ya q çıxarmayacaq.

Strukturu base64 əvəzinə oxuyun

PEM başlıq sətirlərinə bükülmüş base64-dür və onun dekodlanması DER verir, yəni nəhəng bir tam ədəd deyil, seriyalaşdırılmış strukturdur. RSA şəxsi açarları iki geniş yayılmış konteynerdə gəlir — PKCS#1 və PKCS#8 — və hər ikisi eyni ədədlər çoxluğuna çözülür.

İki sadə ədəd halında şəxsi struktur doqquz sahə daşıyır: versiya, modul n, açıq eksponent e, şəxsi eksponent d, sadə ədədlər p və q, iki CRT eksponenti və bir CRT əmsalı. RFC 8017 Bölmə A.1 bu komponentləri və ASN.1 düzümünü müəyyən edir, həmçinin ikidən çox sadə ədədə icazə verir, buna görə ümumi analizator əlavə sadə ədəd yazıları çap edə bilər. Sıraya diqqət yetirin, çünki bu, tez-tez edilən səhvi izah edir: açıq yarı şəxsi faylın içində saxlanılır, ona görə açıq bir sahənin olması o faylı paylaşmaq üçün təhlükəsiz etmir. Ondan sonrakı hər şey hostda qalmalı olan materialdır.

Kodlaşdırma məzmunla qarışdırılması asan olan bir qat əlavə edir. openssl asn1parse strukturu ağac kimi çəkir ki, sahə sırası görünsün və o, nə heç nəyi deşifrə edir, nə də açarın yararlı olub-olmadığını deyir.

Açarı çap etmədən sertifikatı açarla uyğunlaşdırın

Sonrakı sual adətən sertifikatla açarın birlikdə olub-olmadığıdır. Modulları müqayisə etmək buna cavab verir, lakin o, həm də şəxsiyə yaxın materialı biletə düşə biləcək terminal transkriptinə köçürür. Açıq yarıları müqayisə etmək eyni suala ekranda heç bir həssas şey olmadan cavab verir.

openssl pkey -in vpn-client.key -pubout -out /tmp/key.pub
openssl x509 -in vpn-client.crt -pubkey -noout > /tmp/cert.pub
cmp /tmp/key.pub /tmp/cert.pub && echo MATCH

Eyni fayllar sertifikatın həmin açarın açıq yarısını daşıdığını bildirir, fərq isə səhv cütü tutduğunuzu göstərir. Bu uyğunsuzluq rahat danışıq aparan və sonra autentifikasiyanı rədd edən tunelin ən çox yayılmış səbəbidir. Sonra iki müvəqqəti faylı silin; onlarda heç bir sirr yoxdur, amma təmiz iş qovluğu hadisənin ortasında düşünməyi asanlaşdırır.

Qonşu faylların nə olmadığını bilin

Sertifikat həmyaşıdın CA sertifikatı ilə açdığı şifrələnmiş açıq açar deyil; o, açıq açar və şəxsiyyət məlumatları arasında imzalanmış bağdır. CA-nın şəxsi imzalama açarı öz sertifikatından və hər müştəri açarından ayrı qalır. Sorğu da sertifikat deyil: o, tələb olunan məlumatı və açıq açarı sorğu üzərində imza ilə daşıyır, bu da onu hüquq sübutu deyil, qeydiyyat girişi edir.

FileAnswersDoes not prove
vpn-client.keyPossession of the private keyThat the identity is enrolled
vpn-client.crtA signed binding of public key to identityThat the client holds the matching key
vpn-client.csrThe requested binding and public keyThat access was granted
dh2048.pemGroup parameters for key exchangeAny RSA component
crl.pemRevocation status for certificatesAnything about a private key

Bu yazılardan ikisi RSA parametrləri ilə kifayət qədər tez-tez qarışdırılır ki, iki dəfə adlandırılsın. Diffie-Hellman parametr faylı açar qurma üçün qrup parametrləri saxlayır və RSA sadə ədədləri yoxdur, baxmayaraq ki, o da böyük sadə ədəd kimi çap olunur. Ləğv siyahısı sertifikat statusunu yayımlayır və şəxsi eksponentin gizlənə biləcəyi yer deyil.

Buna görə hər inventar sətri dörd şey qeyd etməlidir: obyekt növü, sahibi, təyinatı və şəxsi materialın daxil olub-olmadığı. Sonuncu sütun faylın hara kopyalana biləcəyini həll edir və insanların atladığı sütun elə həmin sütundur.

Cütlüyü qeyd edin, sonra əl sıxışmasını yoxlayın

Hər hansı dəyişiklik etməzdən əvvəl yoxlama çıxışını tarix və OpenSSL versiyası ilə birlikdə saxlayın. Sonrakı rotasiya yaddaşla deyil, sübutla müqayisə edilə bilər.

openssl verify -CAfile ca.crt vpn-client.crt
openssl x509 -in vpn-client.crt -noout -subject -issuer -dates

Açıq açar müqayisəsindən sonra cütü istehlak edən yolu sınayın: tuneli qaldırın, sertifikatın təqdim edildiyini və qəbul edildiyini təsdiqləyin və şlüzün hansı şəxsiyyəti qeyd etdiyini yoxlayın. Açar və sertifikat uyğun gəlirsə və autentifikasiya yenə də uğursuz olursa, qüsur cütlükdə deyil, etimadda, şəxsiyyət xəritələşdirməsində və ya giriş siyasətindədir.

Geri qaytarma üçün əvvəlki açarı və sertifikatı tarixli qovluqda saxlayın və hər ikisini birlikdə bərpa edin, heç vaxt birini yox. Sertifikatsız açar və açarsız sertifikat kənardan eyni cür uğursuz olur, bu da yarım bərpa edilmiş cütləri səhər saat ikidə açmağı baha başa gətirir.

Əlaqəli məqalələr