Easy-RSA kaže da PKI nedostaje? Traži na drugom mjestu
Nedostajući CA ključ ili index.txt obično znači da je Easy-RSA 3 odabrao drugi direktorij. Prvo provjerite PKI selektor, prioritet i otisak izdavaoca.
Naredba se zaustavlja zbog nedostajućeg ca.crt ili nedostajućeg index.txt, a CA već mjesecima izdaje certifikate. Na samom autoritetu ništa se nije promijenilo; naredba je jednostavno pogledala negdje drugdje. Easy-RSA 3 određuje PKI direktorij iz opcije, varijable okruženja, vars datoteke i ugrađene zadane vrijednosti, a bilo koji od njih može pokazivati dalje od autoriteta instalacije. Provjerite koji je pobijedio prije nego što bilo šta kreirate.
Greška imenuje datoteku, a ne direktorij
Instalacijski direktorij i direktorij izdavaoca dva su različita mjesta. Pronalaženje easyrsa na mašini dokazuje samo da je alat instaliran, a ne da je pronašao autoritet u koji vaš VPN vjeruje.
Zato reinstalacija paketa ili ponovno pokretanje init koraka izgleda produktivno i ne mijenja ništa.
Prvo provjerite selektor
U Easy-RSA 3 selektor je EASYRSA_PKI ili odgovarajuća --pki-dir opcija. Navedite apsolutnu putanju, npr. --pki-dir=/srv/pki/office, i odgovor prestaje zavisiti od toga gdje ste slučajno stajali. Ta jedna navika uklanja cijelu klasu ove greške, posebno za skripte pokrenute iz cron-a ili iz CI checkout-a.
Prvo potvrdite generaciju, jer navika Easy-RSA 2 s vars datotekom plus build-key je drugačiji model od onog koji Easy-RSA 3 očekuje. easyrsa --version ispisuje generaciju prije nego što uradi bilo šta drugo, a ./easyrsa --help navodi podnaredbe: cilj build-key znači 2.x, dok build-client-full znači 3.x. Prenos stare KEY_DIR putanje u 3.x poziv zato što ime direktorija izgleda poznato proizvodi upravo ovu grešku.
Ako se verzijski niz i sintaksa naredbe ne slažu, zaustavite se i pročitajte dokumentaciju instaliranog izdanja.
Prioritet objašnjava izgubljenu vars datoteku
Dokumentirani prioritet je opcija naredbenog retka, zatim okruženje, zatim vars datoteka, zatim ugrađena zadana vrijednost. Zato ispravna vrijednost u vars gubi od naslijeđene varijable okruženja, i to je tiha verzija ovog kvara. Provjerite namjeravane varijable i odabir datoteke umjesto da cijelo okruženje izlijete u tiket. Razlika između njih obično je tajna.
Prođite lanac po redu i zabilježite koji je izvor dao putanju koju je naredba koristila. Kada to znate, popravka je zastavica ili export, a ne novi certifikacijski autoritet.
Easy-RSA referenca konfiguracije definira selektor i prioritet, i to je citat koji ide u tiket.
Potvrdite izdavaoca javnim materijalom
Kod uobičajenog izdavaoca zasnovanog na datotekama pročitajte ca.crt i uporedite njegov otisak s zapisom izdavaoca koji ste odobrili. Podudarno ime subjekta nije dokaz identiteta, a ni direktorij nazvan production. Samo otisak povezuje datoteku koju ste našli s autoritetom kojem su vaši partneri trebali vjerovati.
Provjera samo za čitanje je dovoljna: openssl x509 -in /srv/pki/office/ca.crt -noout -subject -issuer -serial -fingerprint -sha256.
Zatim utvrdite ulogu direktorija. Direktorij zahtjeva koji klijent koristi nije baza izdavaoca, a ključ za potpisivanje koji se čuva izvan mreže nema šta tražiti na svakom VPN hostu. Nedostajući ca.key je projektno svojstvo u tom rasporedu, a ne dozvola da izmislite zamjenski autoritet.
Ako je stanje zaista nestalo
Ponekad je putanja ispravna, a stanja zaista nema. Prazan index.txt i ponovo pokrenut serijski brojač daju vam PKI koja izgleda zdravo i ne može dokazati ništa o certifikatima koje nikada nije vidjela: obnove neće opozvati stare, a novi brojevi će se sudariti s historijom. Umjesto toga vratite iz odobrene sigurnosne kopije CA, jer inicijalizacija praznog PKI-ja negdje drugdje samo premješta grešku i ostavlja drugi, nepovezani autoritet.
Kada se putanja i izdavalac slože, sljedeći kvar tretirajte po njegovoj suštini. Permission denied, ključ za potpisivanje kojem treba njegova pristupna fraza i nedostajući zapis o izdavanju tri su različita kvara, a samo jedan od njih tiče se direktorija koji ste upravo popravili.
Nikada ne uklanjajte šifriranje ključa niti proširujte dozvole direktorija da biste prekrili grešku s putanjom. Grešku je jeftino popraviti; popravak nije.