Potřebujete další certifikát pro další notebook, ale první návod ve výsledcích začíná příkazem, který smaže adresář PKI. Ten příkaz patří k prvnímu nastavení, ne k zápisu; jeho spuštění vás stojí CA, historii vydávání a všechny klientské profily, které věřily starému vydavateli. Rozhodnutí je užší: má vydavatel použitelný stav a zapadá nové zařízení do vaší politiky zápisu? Rozhodují tři podmínky a jen jedna ospravedlňuje přestavbu.

Co přestavba skutečně zničí

Reinicializace PKI nahradí adresář prázdnou strukturou: nový klíč a certifikát CA, prázdná databáze vydávání, nový čítač sérií. Klienti se sami nepřizpůsobí; jejich profily připínají starou CA, takže každé zařízení se musí zapsat znovu a nedostupná zařízení ručně.

Tichější ztrátou je evidence. Odvolání závisí na tom, zda víte, které sériové numery jste komu vydali. Smažte index a stále můžete podepisovat, ale už s jistotou neřeknete, které z vydaných certifikátů jste chtěli odvolat. Adresář CA s certifikáty bez odpovídajícího stavu vydavatele je záloha, která obnoví špatnou polovinu systému.

Kopírování soukromého klíče CA vedle běžícího serveru je druhá zkratka, kterou je nutné odmítnout: mění podepisovací autoritu, která má být mimo síť, v další soubor na hostu s nedůvěryhodným provozem.

První podmínka: je stav vydavatele dostupný?

Najděte adresář, kterému server skutečně věří. Porovnejte certifikát, který server předkládá jako CA, s tím v adresáři PKI podle otisku, ne podle názvu souboru:

openssl x509 -in ca.crt -noout -fingerprint -sha256
openssl x509 -in /etc/openvpn/ca.crt -noout -fingerprint -sha256

Pokud se otisky shodují, zápis je přírůstkový a nic nepřestavujte. Pokud se liší, podepisujete CA, které server nevěří: certifikát se čistě nainstaluje a selže při handshake, a tato chyba se hodiny diagnostikuje jako chyba klienta.

Pak hledejte stav vydávání: index, čítač sérií a soubor čísla CRL. Chybí-li index, ale klíč přežil, můžete vydávat, ale dědíte problém se zaznamenáváním odvolání. Poznamenejte to do záznamu změn, protože další žádost o odvolání to odhalí.

Druhá podmínka: kdo drží nový soukromý klíč?

Toto rozhodnutí uživatelé cítí, proto ho udělejte výslovně. Klíč vytvořený klientem a podaný jako žádost ponechá soukromou polovinu na zařízení od prvního příkazu a správce se jí nikdy nedotkne. Klíč vytvořený serverem je snazší pro zařízení bez nástrojů, ale dělá ze správce správce všech klíčů a zvětšuje dopad kompromitace serveru.

S Easy-RSA 3 proti existující CA je import a podpis žádosti dva příkazy:

./easyrsa import-req /tmp/alice.req alice
./easyrsa sign-req client alice

Typ certifikátu volíte vědomě. Žádost podepsaná jako serverový místo klientského certifikátu dá soubor, který vypadá dobře a protějšek ho odmítne, a chybová zpráva málokdy řekne proč. Při podpisu přes openssl ca žije stejná volba v rozšířeních, ne ve výchozí sekci.

Třetí podmínka: potřebuje server víc než certifikát?

Pro běžný server OpenVPN s autentizací certifikátem je certifikát sám zápisem: běžné jméno se stává identitou klienta a adresář, tlačená trasa či statická adresa se odvozují od toho jména. Přidejte certifikát a zapomeňte konfiguraci: tunel se spojí, ale potřebné trasy se neobjeví.

Platformy to mění. OpenVPN Access Server má vlastní databázi uživatelů, takže podepsaný certifikát není účet; účet musí existovat a být povolen. Jiné brány přiřazují řetězec identity ke skupině. Zápis jednoho zařízení obvykle znamená dva systémy a certifikát je jen první.

Přírůstkový postup a kdy přestavět

Postup, který přidá zařízení bez škod: ověřte vydavatele otiskem, pořiďte čerstvou zálohu adresáře PKI, importujte a podepište žádost pro klientskou roli, doručte certifikát s řetězem schváleným kanálem a před připojením ověřte:

openssl verify -CAfile ca.crt alice.crt
openssl x509 -in alice.crt -noout -subject -issuer -dates -purpose

Řádek účelu má ukázat SSL client. Po vydání aktualizujte zálohu CA, protože záloha před zaznamenáním nové série obnoví stav bez právě přidaného zařízení.

Přestavba je správná ve třech případech: klíč CA je kompromitován, stav vydávání je nenávratně ztracen nebo vědomě měníte algoritmus či politiku. Všechny tři jsou projekty s plánem opětovného zápisu každého klienta, ne kroky žádosti o jedno zařízení. Pokud žádný neplatí, zapište přírůstkově.

Související články