En Ausstellungsdurchlaf stoppt mat entry 22: invalid expiry date, an d'Ufro virun Iech ass komplett an der Rei. D'Plaint kënnt vum Parser vun der CA-Datebank, net vun der CSR an net vum VPN-Client, deen d'Zertifikat schlussendlech presentéiere wäert. Dee Mëssënn entscheet alles duerno: en Datensatz ass fehlerhaft, dofir gehéiert d'Reparatur an den CA-Zoustand an net an d'Ufro oder an d'Peer-Konfiguratioun. Behandelt den nummeréierten Andrag als eng Zeil an index.txt, an de Problem schrumpft op eng bekuerzt Datefro mat enger Äntwert, déi ee ka kontrolléieren.

Liest de Feeler als eng Plaint iwwer d'Datebank

All openssl ca Opruff geet duerch seng Textdatebank, ier en eppes ënnerschreift. All Zeil dréit e Statusbuschtaf, en Ofleef-Zäitstempel, en optionale Revokatiouns-Zäitstempel, eng Seriennummer an Hex, en Dateinumm an de Sujet. Wann ee Feld net parse léisst, mellt de Befehl d'Zeilennummer a stoppt, amplaz de Rescht vum Datensatz ze roden.

Dee Stopp ass schützend an net pedantesch. En Datensatz, deen d'Werkzeug net liese kann, léisst et net entscheeden, ob de gefrote Sujet schonn existéiert, ob eng Seriennummer ausginn ass oder wat déi nächst CRL enthalte soll. Weider ze fueren iwwer eng futti Zeil eraus géif genee déi stëll Inkonsistenz produzéieren, déi Méint méi spéit opdaucht, meeschtens während enger Revokatioun, déi kee ka erklären. Liest d'Noriicht als Plaint iwwer d'Daten, an d'Enquête bleift am CA-Verzeechnes.

Kopéiert den CA-Zoustand, ier Dir eppes ufässt

Maacht en Schnappschoss vum ganzen CA-Verzeechnes, net nëmme vun der Datebankdatei. Den Index, seng Attributdatei, d'Dateie fir Seriennummer a CRL-Nummer, de private Schlëssel an déi ausgestallt Zertifikater sinn all un spéideren Operatiounen bedeelegt, an eng Reparatur, déi een erëmbréngt an déi aner vergësst, schaaft en zweete Virfall. Benotzt dem CA seng eege Sécherungssroutine, wou et eng gëtt, a pauséiert déi geplangt Ausstellung fir d'Dauer vun der Aarbecht.

Notéiert de OpenSSL-Build an d'Konfiguratiounsdatei, déi de feelgeschloene Befehl tatsächlech gelueden huet. Installatiounen halen dacks méi wéi een CA-Verzeechnes, an de Feeler huet just e Sënn géintiwwer der Datebank, déi déi gewielten Konfiguratioun nennt.

Fannt den Andrag an dekodéiert säin Datumsfeld

Déi gemellt Zeilennummer gëtt vum éischten Datensatz u gezielt, also sed -n '22p' index.txt lant op deem problemateschen Andrag, soubal Dir bestätegt hutt, datt driwwer keng eidel Zeilen oder Kommentarer stinn. Dréckt déi Zeil mat sichtbaren Trennzeechen, well Tabulaturen an hannendrun stinn Espaceë geleefeg an an engem gewéinlechen Editeurfenster onsichtbar sinn.

D'Ofleef-Feld ass en Zäitstempel, deem seng Breet vum Joer ofhängt. Wäerter bis 2049 gi mat UTCTime als YYMMDDHHMMSSZ geschriwwen, wärend spéider Wäerter op GeneralizedTime mat véierstelleger Joreszuel wiesselen. En Datensatz, deen déi zwou Formen mengt, oder dee eng zweestelleg Joreszuel dréit, wou de Parser elo véier erwaart, feelt genee op dëser Plaz. Sou och en ofgeschnidden Feld, dat en ënnerbrache Schreiwen hannerlooss huet.

Vergläicht den Datensatz mam Zertifikat, op dat en sech bezitt, an net mat der Datei vun enger anerer CA. Dat ënnerschriwwent Zertifikat ass d'Autoritéit dofir, wat d'Gëltegkeet soll soen, an et existéiert schonn als parsebare Objet.

Reparéiert den Datensatz no dem ënnerschriwwene Zertifikat

Liest déi richteg Datume mat openssl x509 -in issued.pem -noout -dates -serial -subject. Konvertéiert notAfter an déi Stempelbreet, déi Äre Build fir dat Joer schreift, a bestätegt, datt d'Seriennummer zum Andrag passt, deen Dir just wäert änneren, ier Dir een Zeechen ännert.

Ännert just dee futti Feld, behält de Statusbuschtaf an d'Seriennummer, a loosst de Rescht vun der Zeil an Rou. Wann den Datensatz sech mat kengem ënnerschriwwenen Zertifikat versöhne léisst, behandelt en als verierrten Andrag a zitt en iwwer dem CA seng eege Revokatiounsstreck zréck, amplaz d'Zeil vun Hand ze läschen.

Reparéiert net, andeems Dir en Datum ofschneit, fir zu enger Vermutung iwwer d'Joer ze passen. En Ofschnëtt vun zwee Zeeche ass tëschent Builden net iwwerdrobar, an en ännert stëll d'Gëltegkeet, déi d'Datebank zukünftege Kontrollen op duebel Sujeten a CRL mellt. Wann den urspréngleche Wäert net erëmzefannen ass, stellt en ënner enger neier Seriennummer nach eng Kéier aus a schreift op, firwat den alen opginn gouf. D'Auditspur gehéiert zur Reparatur, net d'Pabeieraarbecht ronderëm.

Iwwerpréift Ausstellung a CRL-Erzuelung, ier Dir fortgitt

Fuert eng Ausstellung mat der selwechter Konfiguratioun aus a bestätegt, datt se ouni Plaint iwwer eng Zeilennummer fäerdeg gëtt. Erstellt duerno eng CRL mat openssl ca -gencrl -config openssl.cnf a kontrolléiert, datt se sech parse léisst, well en beschiedegten Datensatz dacks do opdaucht an net beim Ënnerschreiwen.

Inspizéiert dat neit Zertifikat mat openssl x509 -noout -dates -serial a vergläicht et mat der Zeil, déi d'CA just geschriwwen huet. Bestätegt, datt de Statusbuschtaf an den Ofleefdatum mam Zertifikat iwwereneestëmmen, a bestätegt, datt openssl verify -CAfile ca.pem issued.pem ouni Feeler zréckkënnt. Stellt duerno déi geplangt Ausstellung erëm hier a beobacht de éischten Durchlaf, well eng zweet fehlerhaft Zeil sech direkt mellt.

Ähnlech Artikelen