Iemand het 'n sertifikaat in die CA-konsole herroep en nou kan 'n gebruiker nie konekteer nie. Die eerste instink is om die ontskakeling te soek, en vir die meeste PKI's is daar nie een nie: herroeping is 'n verklaarde feit oor 'n reeksnommer, en die ondersteunde pad terug is 'n nuwe sertifikaat, nie 'n omgekeerde rekord nie. Werk deur die kontroles hieronder in volgorde, want watter herstelling jy mag gebruik, hang af van die redeskode en van of die sleutel ooit blootgestel is.

Identifiseer die sertifikaat, nie die persoon nie

Algemene name herhaal. 'n Gebruiker wat verlede kwartaal weer ingeskryf het, kan twee sertifikate met dieselfde CN en verskillende reeksnommers hê, en as jy een herroep, bly die ander een werk. Bepaal eers die presiese objek:

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

Skryf die reeksnommer, die uitreiker, die herroepingsdatum en die rede wat in die CRL aangeteken is, neer. Bevestig dan watter toestelle daardie reeksnommer aanbied, want 'n herroepte sertifikaat kan steeds op 'n skootrekenaar, 'n selfoon en 'n spaarrouter geïnstalleer wees, en 'n vervanging wat net een van hulle bereik, veroorsaak 'n tweede voorval.

'n Vinnige gedragskontrole bevestig die toestand sonder om iets te verander:

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

As dit die sertifikaat as herroep rapporteer, stem die CRL en die kliënt ooreen; as dit skoon verifieer, is die kliënt wat jy in die hand het nie die herroepte een nie, en die soektog gaan voort.

Kontroleer of die CA weerhouding of permanente herroeping gebruik het

RFC 5280 definieer certificateHold as 'n tydelike toestand, en removeFromCRL as die sein wat dit vrystel. Daardie lewensiklus is werklik, maar dit is nie 'n algemene ontskakelingsknoppie nie. Om die redeskode te lees, sê vir jou of die uitreiker ooit bedoel het om vrystelling te ondersteun.

Die strik is om te aanvaar dat 'n tydelike bedoeling 'n tydelike rekord beteken. As die CA-inskrywing keyCompromise of cessationOfOperation dra, is die sertifikaat permanent herroep, ongeag wat die persoon wat die knoppie gedruk het, bedoel het. Omgekeerd is 'n inskrywing gemerk certificateHold op 'n CA wat nie weerhoudingvrystelling implementeer nie, in die praktyk permanent, want niks sal ooit die vrystelling publiseer nie.

Op OpenSSL gebaseerde CA's illustreer die beperking. Die ca-opdrag aanvaar -crl_reason-waardes, insluitend certificateHold en removeFromCRL, maar dit genereer nie delta-CRL's nie — die OpenSSL CA-dokumentasie noem daardie beperking vir sy CRL-uitset. 'n Volledige CRL wat bloot die reeksnommer weglaat, is 'n ander publikasiemodel as 'n delta wat sê "hierdie inskrywing is vrygestel", so om removeFromCRL in 'n op OpenSSL gebaseerde VPN-CA te plak, lewer nie die standaardgedefinieerde vrystelling nie.

As die sleutel moontlik blootgestel is, vervang dit

'n Herroepte sertifikaat is 'n verklaring dat hierdie sleutel nie meer vertrou kan word nie. As die herroeping in wese korrek was — skootrekenaar verloor, sleutel na 'n gedeelde skyf gekopieer, private sleutel in 'n kaartjie geplak — keer die herstel van dieselfde sertifikaat 'n sekuriteitsbesluit om wat na behore gewerk het.

Reik 'n nuwe sleutelpaar uit deur die inskrywingsproses, versprei die nuwe profiel, en laat die ou reeksnommer vir sy volle leeftyd herroep. Dateer alles op wat identiteit deur reeksnommer of vingerafdruk vaspen, insluitend toelatingslyste, toestelinventarisse en monitering wat 'n spesifieke sertifikaat verwag.

Die geriefsargument om die ou een te herstel is werklik, maar dit moet uitdruklik beantwoord word eerder as in die stilte. "Die gebruiker het vandag toegang nodig" is 'n rede om uitreiking te bespoedig, nie 'n rede om 'n sleutel te ont-herroep waarvoor jy nie rekenskap kan gee nie.

As dit 'n administratiewe fout was, vervang onder beheer

Wanneer die herroeping bloot verkeerd was en die sleutel nooit blootgestel is nie, is die herstelling steeds 'n beheerde vervanging eerder as 'n wysiging. Gebruik die uitreiker se ondersteunde proses, hou die reeksnommer en uitreikingsgeskiedenis ongeskonde, en vermy die twee aanloklike kortpaaie: om die statuskarakter in index.txt van R terug na V te draai, en om die uitreikingsry te skrap sodat 'n nuwe sertifikaat die reeksnommer kan hergebruik.

Op 'n OpenSSL-CA is die databasis tab-geskei en maklik om verkeerd te lees, wat handredigering aanloklik maak:

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

Lees dit, moenie dit skryf nie. Om die lêer te redigeer, verander die volgende CRL sonder enige ouditspoor, en enige tweede CA-instansie of rugsteun wat nog die oorspronklike ry bevat, sal later daarmee verskil.

Nadat jy die vervanging uitgereik het, publiseer 'n vars CRL deur die normale meganisme en laat kliënte dit optel. Om 'n CRL te verwyder, sy leeftyd tot niks te verkort of herroepingskontrole in die kliëntprofiel te deaktiveer, repareer een gebruiker deur elke ander herroeping wat die CA ooit gepubliseer het, te verswak.

Bevestig 'n vars toelating en hou die rekord

Toets met 'n nuwe verbinding, nie die sessie wat reeds oop was nie. 'n Lewende tonnel voer dalk nie die toelatingskontroles weer uit wat 'n vars handdruk verrig nie, en CRL-kassies beteken 'n kliënt kan aanhou konekteer totdat dit verfris. Verbreek, herkonekteer, en bevestig in die bedienerlog watter reeksnommer toegelaat is.

Teken aan wat gebeur het terwyl dit nog vars is: watter reeksnommer herroep is, deur wie, met watter rede, watter vervanging uitgereik is, en wanneer die CRL hergepubliseer is. Daardie rekord is wat die volgende herroepingshersiening moontlik maak, en dit is ook die bewys dat die fout hanteer is eerder as weggesteek.

Gebruik vir kort skorsings in die toekoms 'n toelatingspousemeganisme as die ontplooiing een het — 'n rekening wat op die identiteitslaag gedeaktiveer is, 'n groeplidmaatskap wat verwyder is, 'n kliëntprofiel wat teruggehou is. Dit hou 'n tydelike beleidsbesluit apart van die vraag of 'n uitgereikte sertifikaat nog betroubaar is, en dit is presies die onderskeid wat die eerste keer verlore gegaan het.

Verwante artikels