Easy-RSA sier at PKI-en mangler? Den ser et annet sted
En manglende CA-nøkkel eller index.txt betyr vanligvis at Easy-RSA 3 valgte en annen katalog. Sjekk først PKI-velgeren, forrangen og utstederens fingeravtrykk.
Kommandoen stopper med en manglende ca.crt eller en manglende index.txt, selv om CA-en har utstedt sertifikater i månedsvis. Ingenting er endret ved autoriteten; kommandoen så ganske enkelt et annet sted. Easy-RSA 3 utleder en PKI-katalog fra et alternativ, en miljøvariabel, en vars-fil og en innebygd standardverdi, og hvilken som helst av dem kan peke bort fra distribusjonens autoritet. Sjekk hvilken som vant før du oppretter noe.
Feilen navngir en fil, ikke en katalog
Installasjonskatalogen og utstederkatalogen er to forskjellige steder. Å finne easyrsa på maskinen beviser bare at verktøyet er installert, ikke at det fant autoriteten VPN-en din stoler på.
Derfor føles det produktivt å installere pakken på nytt eller kjøre init-trinnet igjen, og det endrer ingenting.
Sjekk velgeren før alt annet
I Easy-RSA 3 er velgeren EASYRSA_PKI eller det tilsvarende --pki-dir alternativet. Oppgi en absolutt sti som --pki-dir=/srv/pki/office, og svaret slutter å avhenge av hvor du tilfeldigvis sto. Den ene vanen fjerner en hel klasse av denne feilen, særlig for skript som kjøres fra cron eller fra en CI-sjekkut.
Bekreft først generasjonen, fordi Easy-RSA 2-vanen med en vars-fil pluss build-key er en annen modell enn den Easy-RSA 3 forventer. easyrsa --version skriver ut generasjonen før den gjør noe annet, og ./easyrsa --help lister opp underkommandoene: et build-key-mål betyr 2.x, mens build-client-full betyr 3.x. Å ta en gammel KEY_DIR-sti inn i et 3.x-kall fordi katalognavnet ser kjent ut, gir nøyaktig denne feilen.
Hvis versjonsstrengen og kommandosyntaksen ikke stemmer overens, stopp og les dokumentasjonen til den installerte utgivelsen.
Forrang forklarer en vars-fil som tapte
Den dokumenterte forrangen er kommandolinjealternativ, deretter miljø, deretter vars-fil, deretter innebygd standard. En korrekt verdi i vars taper derfor mot en nedarvet miljøvariabel, og det er den stille versjonen av denne feilen. Undersøk de tiltenkte variablene og filvalget i stedet for å dumpe hele miljøet i en sak. Forskjellen mellom de to er vanligvis en hemmelighet.
Gå gjennom kjeden i rekkefølge og noter hvilken kilde som leverte stien kommandoen brukte. Når du vet det, er rettelsen et flagg eller en export, ikke en ny sertifiseringsautoritet.
Easy-RSA konfigurasjonsreferansen definerer velgeren og forrangen, og det er sitatet som skal inn i saken.
Bekreft utstederen med offentlig materiale
Med den vanlige filbaserte utstederen, les ca.crt og sammenlign fingeravtrykket med utstederposten du godkjente. Et samsvarende subjektnavn er ikke identitetsbevis, og en katalog som heter production er det heller ikke. Bare fingeravtrykket knytter filen du fant til autoriteten parten dine ble bedt om å stole på.
En skrivebeskyttet kontroll er nok: openssl x509 -in /srv/pki/office/ca.crt -noout -subject -issuer -serial -fingerprint -sha256.
Fastsett deretter katalogens rolle. En forespørselskatalog som en klient bruker, er ikke en utsteders database, og en signeringsnøkkel som holdes offline har ingenting på hver VPN-vert å gjøre. En manglende ca.key er en designegenskap i det oppsettet, ikke tillatelse til å finne opp en erstatningsautoritet.
Hvis tilstanden virkelig er borte
Noen ganger er stien riktig og tilstanden virkelig ikke der. En tom index.txt og en omstartet serieteller gir deg en PKI som ser sunn ut og ikke kan bevise noe om sertifikatene den aldri så: fornyelser vil ikke tilbakekalle de gamle, og de nye numrene vil kollidere med historikken. Gjenopprett fra CA-ens godkjente sikkerhetskopi i stedet, fordi initialisering av en tom PKI et annet sted bare flytter feilen og etterlater en andre, urelatert autoritet.
Når stien og utstederen er enige, ta den neste feilen på dens egne premisser. Permission denied, en signeringsnøkkel som trenger passordfrasen sin, og en manglende utstedelsespost er tre forskjellige feil, og bare én av dem handler om katalogen du nettopp rettet.
Fjern aldri nøkkelkryptering eller utvid katalogtillatelser for å dekke over en stifeil. Feilen er billig å rette; reparasjonen er det ikke.