Príkaz sa zastaví pre chýbajúci ca.crt alebo chýbajúci index.txt, hoci CA vydáva certifikáty už mesiace. Na samotnej autorite sa nič nezmenilo; príkaz sa jednoducho pozrel inam. Easy-RSA 3 určuje adresár PKI z voľby, premennej prostredia, súboru vars a vstavanej predvolenej hodnoty a ktorýkoľvek z nich môže ukazovať mimo autority nasadenia. Skôr než čokoľvek vytvoríte, skontrolujte, ktorý zvíťazil.

Chyba pomenúva súbor, nie adresár

Inštalačný adresár a adresár vydavateľa sú dve rôzne miesta. Nájsť easyrsa na stroji dokazuje len to, že nástroj je nainštalovaný, nie že našiel autoritu, ktorej dôveruje váš VPN.

Preto sa preinštalovanie balíka alebo opätovné spustenie kroku init zdá produktívne a nič nemení.

Najprv skontrolujte selektor

V Easy-RSA 3 je selektorom EASYRSA_PKI alebo zodpovedajúca voľba --pki-dir. Zadajte absolútnu cestu, napríklad --pki-dir=/srv/pki/office, a odpoveď prestane závisieť od toho, kde ste náhodou stáli. Tento jeden návyk odstráni celú triedu tejto chyby, najmä pri skriptoch spúšťaných z cronu alebo z checkoutu CI.

Najprv potvrďte generáciu, pretože návyk Easy-RSA 2 so súborom vars plus build-key je iný model, než aký očakáva Easy-RSA 3. easyrsa --version vypíše generáciu skôr, než urobí čokoľvek iné, a ./easyrsa --help vypíše podpríkazy: cieľ build-key znamená 2.x, zatiaľ čo build-client-full znamená 3.x. Prenášanie starej KEY_DIR cesty do volania 3.x preto, že názov adresára vyzerá povedome, vyvolá presne túto chybu.

Ak sa reťazec verzie a syntax príkazu nezhodujú, zastavte sa a prečítajte si dokumentáciu nainštalovaného vydania.

Priorita vysvetľuje prehratý súbor vars

Dokumentovaná priorita je voľba príkazového riadka, potom prostredie, potom súbor vars, potom vstavaná predvolená hodnota. Správna hodnota v vars preto prehráva so zdedenou premennou prostredia, a to je tichá verzia tohto zlyhania. Preskúmajte zamýšľané premenné a výber súboru, namiesto toho, aby ste celé prostredie vysypali do tiketu. Rozdiel medzi oboma je zvyčajne tajomstvo.

Prejdite reťazec v poradí a poznamenajte, ktorý zdroj dodal cestu, ktorú príkaz použil. Keď to viete, oprava je prepínač alebo export, nie nová certifikačná autorita.

Referenčná príručka konfigurácie Easy-RSA definuje selektor a prioritu a je to citácia, ktorá patrí do tiketu.

Potvrďte vydavateľa verejným materiálom

Pri obvyklom súborovom vydavateľovi prečítajte ca.crt a porovnajte jeho odtlačok so záznamom vydavateľa, ktorý ste schválili. Zhodný názov subjektu nie je dôkazom identity, a adresár s názvom production tiež nie. Len odtlačok spája nájdený súbor s autoritou, ktorej mali vaši partneri dôverovať.

Stačí kontrola iba na čítanie: openssl x509 -in /srv/pki/office/ca.crt -noout -subject -issuer -serial -fingerprint -sha256.

Potom určte rolu adresára. Adresár žiadostí, ktorý klient používa, nie je databázou vydavateľa, a podpisový kľúč uchovávaný offline nemá na každom hostiteľovi VPN čo robiť. Chýbajúci ca.key je v tomto usporiadaní vlastnosťou návrhu, nie povolením vymyslieť náhradnú autoritu.

Ak stav naozaj zmizol

Niekedy je cesta správna a stav skutočne chýba. Prázdny index.txt a reštartovaný sériové počítadlo vám dajú PKI, ktorá vyzerá zdravo a nemôže nič dokázať o certifikátoch, ktoré nikdy nevidela: obnovy neodvolajú staré a nové čísla sa zrazia s históriou. Obnovte namiesto toho zo schválenej zálohy CA, pretože inicializácia prázdnej PKI inde len presúva chybu a zanecháva druhú, nesúvisiacu autoritu.

Keď sa cesta a vydavateľ zhodujú, riešte ďalšie zlyhanie podľa jeho podstaty. Permission denied, podpisový kľúč, ktorý potrebuje svoju prístupovú frázu, a chýbajúci záznam o vydaní sú tri rôzne poruchy a iba jedna z nich sa týka adresára, ktorý ste práve opravili.

Nikdy neodstraňujte šifrovanie kľúčov ani nerozširujte oprávnenia adresárov, aby ste zakryli chybu cesty. Chyba sa dá lacno opraviť; oprava nie.

Súvisiace články