Keegi tühistas CA-konsoolis sertifikaadi ja nüüd ei saa kasutaja ühendust luua. Esimene instinkt on otsida tagasivõtmist, ja enamikus PKI-des seda pole: tühistamine on seerianumbri kohta öeldud fakt, ja toetatud tee tagasi on uus sertifikaat, mitte ümberpööratud kirje. Käige allolevad kontrollid järjekorras läbi, sest see, millist parandust tohib kasutada, sõltub põhjusekoodist ja sellest, kas võti oli kunagi paljastatud.

Tehke kindlaks sertifikaat, mitte inimene

Ühised nimed korduvad. Kasutajal, kes eelmisel kvartalil uuesti registreerus, võib olla kaks sama CN-i ja erineva seerianumbriga sertifikaati, ja ühe tühistamine jätab teise tööle. Tehke esmalt kindlaks täpne objekt:

openssl x509 -in client.crt -noout -serial -issuer -subject -dates
openssl crl -in ca.crl -noout -text | head -40

Kirjutage üles seerianumber, väljaandja, tühistamise kuupäev ja CRL-is kirjas põhjus. Seejärel kinnitage, millised seadmed seda seerianumbrit esitavad, sest tühistatud sertifikaat võib endiselt olla paigaldatud sülearvutisse, telefoni ja varurouterisse, ning asendus, mis jõuab ainult ühte neist, tekitab teise juhtumi.

Kiire käitumiskontroll kinnitab oleku ilma midagi muutmata:

openssl verify -crl_check -CAfile ca.crt -CRLfile ca.crl client.crt

Kui see teatab sertifikaadi tühistatuks, on CRL ja klient ühel meelel; kui see valideerub puhtalt, ei ole teie käes olev klient see tühistatu, ja otsing jätkub.

Kontrollige, kas CA kasutas peatamist või püsivat tühistamist

RFC 5280 määratleb certificateHold ajutise olekuna ja removeFromCRL signaalina, mis selle vabastab. See elutsükkel on tõeline, kuid see ei ole üldine tagasivõtmise nupp. Põhjusekoodi lugemine ütleb teile, kas väljaandja kavatses kunagi vabastamist toetada.

Lõks on eeldada, et ajutine kavatsus tähendab ajutist kirjet. Kui CA kirjel on keyCompromise või cessationOfOperation, on sertifikaat püsivalt tühistatud, olenemata sellest, mida nuppu vajutanud inimene kavatses. Vastupidi, kirje, mis on tähistatud certificateHold, CA-l, mis peatamise vabastamist ei rakenda, on praktikas püsiv, sest miski ei avalda kunagi vabastamist.

OpenSSL-il põhinevad CA-d näitavad piiri. Käsk ca aktsepteerib -crl_reason väärtusi, sealhulgas certificateHold ja removeFromCRL, kuid ei genereeri delta-CRL-e — OpenSSL CA dokumentatsioon märgib selle piirangu oma CRL-väljundi kohta. Täielik CRL, mis seerianumbri lihtsalt välja jätab, on teistsugune avaldamismudel kui delta, mis ütleb "see kirje on vabastatud", seega removeFromCRL kleepimine OpenSSL-il põhinevasse VPN CA-sse ei anna standarditega määratletud vabastamist.

Kui võti võis olla paljastatud, asendage see

Tühistatud sertifikaat on avaldus, et seda võtit ei saa enam usaldada. Kui tühistamine oli sisuliselt õige — sülearvuti kadus, võti kopeeriti jagatud kettale, privaatvõti kleebiti pileti sisse —, siis sama sertifikaadi taastamine pöörab ümber turvaotsuse, mis toimis ettenähtud viisil.

Väljastage registreerimisprotsessi kaudu uus võtmepaar, jagage uus profiil ja jätke vana seerianumber kogu selle eluea jooksul tühistatuks. Uuendage kõike, mis kinnitab identiteedi seerianumbri või sõrmejälje järgi, sealhulgas vastuvõtunimekirjad, seadmete inventuurid ja konkreetset sertifikaati ootav järelevalve.

Mugavusargument vana taastamiseks on tõeline, kuid sellele tuleks vastata selgesõnaliselt, mitte vaikselt. "Kasutajal on täna juurdepääsu vaja" on põhjus väljastamist kiirendada, mitte põhjus tühistamist tagasi võtta võtmel, mille eest te ei saa vastutada.

Kui see oli haldusviga, asendage kontrollitult

Kui tühistamine oli lihtsalt vale ja võti ei olnud kunagi paljastatud, on parandus siiski kontrollitud asendus, mitte redigeerimine. Kasutage väljaandja toetatud protsessi, hoidke seerianumber ja väljastamise ajalugu puutumatuna ning vältige kahte ahvatlevat otseteed: olekutähe pööramine failis index.txt sealt R tagasi V-ks ja väljastamisrea kustutamine, et uus sertifikaat saaks seerianumbrit uuesti kasutada.

OpenSSL CA-s on andmebaas tabulaatoritega eraldatud ja kergesti valesti loetav, mis teeb käsitsi redigeerimise ahvatlevaks:

awk -F'\t' '$1=="R" {print $4, $3, $6}' index.txt

Lugege seda, ärge kirjutage. Faili redigeerimine muudab järgmist CRL-i ilma igasuguse auditijäljeta, ja iga teine CA-eksemplar või varukoopia, mis hoiab veel algset rida, on sellega hiljem vastuolus.

Pärast asenduse väljastamist avaldage värske CRL tavapärase mehhanismi kaudu ja laske klientidel see üles võtta. CRL-i eemaldamine, selle eluea nulli lühendamine või kliendiprofiilis tühistamise kontrollimise väljalülitamine parandab ühe kasutaja, nõrgendades kõiki teisi tühistamisi, mille CA on kunagi avaldanud.

Kinnitage värske vastuvõtt ja hoidke kirje

Testige uue ühendusega, mitte sessiooniga, mis oli juba avatud. Elav tunnel ei pruugi uuesti käivitada vastuvõtukontrolle, mida teeb värske kätlus, ja CRL-i vahemälud tähendavad, et klient võib ühendamist jätkata, kuni see värskendub. Katkestage, ühenduge uuesti ja kinnitage serverilogis, milline seerianumber vastu võeti.

Registreerige, mis juhtus, kuni see on veel värske: milline seerianumber tühistati, kelle poolt, mis põhjusel, milline asendus väljastati ja millal CRL uuesti avaldati. Just see kirje teeb võimalikuks järgmise tühistamise ülevaatamise, ja see on ka tõend, et viga käsitleti, mitte ei peidetud.

Tulevikus lühikeste peatamiste jaoks kasutage vastuvõtupausi mehhanismi, kui juurutusel see on — identiteedikihis deaktiveeritud konto, eemaldatud grupiliikmelisus, kinni hoitud kliendiprofiil. See hoiab ajutise poliitikaotsuse eraldi küsimusest, kas väljastatud sertifikaat on veel usaldusväärne, ja täpselt see erinevus läks esimesel korral kaduma.

Seotud artiklid