Pregled počinje na listi certifikata klijenta, gdje unos prikazuje samo naziv, izdavaoca i datum isteka i ništa više. Izvezite ga, uvezite na drugom uređaju i veza se odbija jer klijent ne može dokazati posjedovanje privatnog ključa. Datoteka je kopirana u cjelosti; greška je očekivati da certifikat nosi vlastiti ključ. Pročitajte dijalog za izvoz prije nego odaberete format, zatim pregledajte datoteku koju ste zaista dobili.

Dva klika, dva sasvim različita artefakta.

Čitajte dijalog za izvoz, ne nastavak datoteke

Izvoz certifikata DER ili PEM sadrži javni ključ i potpisane tvrdnje o identitetu, što je ono što serveru treba da bi vam vjerovao i što klijentu treba da bi provjerio server. Paket PKCS#12 je kontejner koji može sadržavati certifikat, njegov lanac i odgovarajući privatni ključ, zaštićen lozinkom, iako se može kreirati i bez ključa.

PEM je samo tekstualno kodiranje, a ne obećanje o sadržaju. Isti nastavak može opisivati jedan certifikat ili datoteku s nekoliko označenih blokova, a opcije izvoza odlučuju koje.

Zato korisno pitanje nikada nije koji ste nastavak dobili, nego koje blokove datoteka sadrži. Paket izvezen bez ključa i dalje je paket. Provjerite sadržaj, a ne popularnost formata.

Pregledajte šta ste zaista dobili

Potražite oznake prije nego bilo šta uvezete, zatim pročitajte polja certifikata da potvrdite koji identitet držite. Izvršite provjere na datoteci koja će zaista biti uvezena. Ponovite ih nakon svakog ponovnog izvoza, jer opcije mogu biti različite.

grep -E 'BEGIN (CERTIFICATE|PRIVATE KEY|ENCRYPTED PRIVATE KEY)' bundle.pem
openssl x509 -in client.crt -noout -subject -issuer -dates
openssl pkey -in client.key -noout -text | head -5
openssl pkcs12 -info -in client.p12 -noout

Izvoz samo s blokom certifikata je javni objekt i ne može se autentificirati. Blok ključa bez certifikata ostavlja vas bez lanca koji server očekuje. Izlaz podataka PKCS#12 takođe javlja da li je ključ prisutan, što rješava pitanje za taj format. Navodi i algoritam i veličinu ključa, i potpuno pada kada ključa nema.

Nikada ne lijepite datoteku koja sadrži privatni ključ u temu podrške, praćenje problema ili chat, čak i kada izgleda kao certifikat koji ste već dijelili. Snimci ekrana panela s ključem zaslužuju istu opreznost.

Ključ može živjeti tamo odakle ga ne možete kopirati

Na upravljanim uređajima privatni ključ može stajati u privjesku ključeva operativnog sistema, hardverskom tokenu ili sigurnom enklavi, s politikom koja ga označava kao neizvoziv. Upravitelj certifikata tada prikazuje javni objekt dok tajna ostaje na mjestu, i nijedna naredba za izvoz neće proizvesti prenosivu kopiju. Upis putem upravljanja mobilnim uređajima često po dizajnu funkcioniše upravo tako.

To je kontrola, a ne prepreka koju treba zaobići. Rekonstrukcija privatnog ključa iz javnog certifikata nije moguća, i svaki alat koji tvrdi da to radi čini nešto drugo.

Upišite novi identitet umjesto kopiranja

Podržani put je obično da upišete poseban identitet za novi uređaj i opozovete stari kada ode u penziju, tako da se svaki uređaj može povući nezavisno. Gdje je izvoz s ključem zaista odobren, tretirajte dobivenu datoteku i njenu lozinku kao vjerodajnice: šifrovane u mirovanju, prenesene preko pouzdanog kanala i izbrisane kada upis završi.

Provjerite autentifikacijom s uvezenim identitetom, a ne gledanjem da uvoz uspije. Klijent koji prihvati javni certifikat u svoje spremište nije dokazao ništa o ključu.

Završite potvrdom da server prihvata novi identitet i da se stari i dalje ponaša kako politika predviđa. Time je pregled zaokružen dokazom, a ne datotekom koja izgleda ispravno.

Povezani članci