česky | english
Jak nahradit omylem odvolaný certifikát
Stane se, že omylem odvoláte platný certifikát. Když pak zjistíte, že ho ještě potřebujete, nelze už akci vrátit. Jednou odvolaný certifikát je už zcela neplatný a nelze ho oživit ani obnovit. Ani jeho pořadové číslo už melze použít, neboť toto číslo je v rámci jedné CA (zde CAcert) jedinečné.
Avšak, pokud máte původní CSR (žádost o certifikát), nebo alespoň privátní klíč, můžete si vystavit nový certifikát se stejným párem klíčů, jako měl původní. Bude mít ovšem jiné pořadové číslo a jiné datum expirace. To však většinou nevadí, pokud není funkce potřebné aplikace/webu vázána na pořadové číslo certifikátu.
K původnímu certifikátu jste jistě měli privátní klíč. Ten se odvoláním ani nesmazal, ani nezměnil. Hledejte ho na zařízení, které původní certifikát používalo, nebo v zálohách *.p12 či *.pfx. Tyto zálohy obvykle obsahují privátní klíč, Váš certifikát a kořenový certifikát(y) vystavitele. Avšak po odvolání Vašeho certifikátu už Vám jeho záloha nepomůže.
Vystavení pomocí CSR
Tento postup je velmi jednoduchý. Máte-li uloženo CSR v souboru, pak stačí znovu ho předložit webu CAcert k vystavení certifikátu, a protože privátní klíč zůstává nezměněn, není třeba podnikat další kroky kromě instalace vystaveného certifikátu.
Vystavení, máte-li pouze privátní klíč
Pro pohodlí uživatelů používal CAcert generování CSR přímo z prohlížeče. Prohlížeče dnes však už příslušnou značku <keygen> nepodporují. Pokud byl Váš původní certifikát vytvořen takto, nemáte žádný soubor CSR, který by šlo znovu použít. Je třeba najít privátní klíč a dostat ho do programu, který dokáže k němu dogenerovat veřejný klíč, vytvořit CSR a uložit ho do souboru. Takovým programem je grafický XCA nebo řádkový openSSL.
Použití programu XCA a zálohy P12
Máte-li zálohu v souboru *.p12, je třeba importovat z ní privátní klíč do XCA. Přejděte na záložku Private keys a vpravo najdete tlačítko Import PFX (PKCS#12). (Obsluhuje i soubory *.p12.)
Zadejte heslo zálohy.
Nyní se záloha otevře a ukáže všechny obsažené položky ve tvaru PEM. Zvolte a importujte pouze privátní klíč.
Poznačte si název importovaného privátního klíče.
Vytvořte nový CSR. Na záložce Certificate Signing Request stiskněte vpravo tlačítko New Request. Otevře se další okno.
Na záložce Source pojmenujte žádost a vyberte šablonu certifikátu. Výchozí pro klientské je vidět na obrázku, serverová má označení SSL server.
Na záložce Subject zadejte název importovaného privátního klíče.
Na záložce Extensions přidejte, je.li třeba, alternativní názvy (SAN).
Na záložce Netscape vyberte v seznamu typ certifikátu. Stiskněte OK.
Ostatní údaje do certifikátu doplní CAcert z Vašeho účtu. Nakonec stiskněte OK. Žádost se objeví v seznamu vlevo. Můžete si ji prohlédnout (Details).
Exportujte žádost do souboru *.pem, *.txt nebo *.csr. Označte žádost a stiskněte Export. Pro tento soubor je výhodný tvar TXT, který lze později snadno otevřít textovým editorem, celý jeho obsah označit a zkopírovat do schránky (Ctrl-C).
Další postup je přímočarý.
Otevřete exportovaný soubor a celý jeho obsah uložte do schránky (Ctrl-C).
Pak se přihlaste k webu CAcert, v menu zvolte Nový (klientský nebo serverový certifikát) a předložte CSR zápisem (Ctrl-V) do pole pro žádost. Dokončete akci a stáhněte si vystavený certifikát. Nezapomeňte si pořídit zálohu *.p12/*.pfx.
Import vystaveného certifikátu do XCA je potvrzen.
Nový certifikát a jeho údaje na záložce Certificates. Veřejný klíč původního certifikátu je zachován, nový certifikát a příslušný privátní klíč jsou v XCA uloženy.
Import klíče do XCA je snadný, máte-li zálohu PKCS#12 ve tvaru PEM v souboru; je to také soubor, z nějž jste certifikát s privátním klíčem importovali například do Androidu. Soubor privátního klíče vytváří i openSSL, viz déle. Problém nastává, když sice privátní klíč máte, ale nedokážete ho dostat do souboru. Zálohování a jiné uložení do souboru lze využít v těchto programech:
- Systém Windows: MMC, modul Certifikáty, zálohuje do souboru *.pfx.
- Firefox a jeho klony, také Seamonkey a jiné prohlížeče či e-mail klienty (Thunderbird) s vlastním Správcem certifikátů: zálohují zpravidla do *.p12.
- XCA: privátní klíče se použijí přímo z programu.
- openSSL na Linuxu: privátní klíče jsou soubory *.key.
Privátní klíč lze tedy většinou uložit do souboru zálohy, odkud ho importujete, nebo už je v souboru (například *.key).
Použití programu openSSL
Máte-li privátní klíč, odpovídající odvolanému certifikátu, v souboru *.key, použijte tento příkaz:
openssl req -new -key <odvol_priv_klic>.key -out <zadost_csr>.txt
Pro výstupní soubor je výhodný tvar TXT, který lze snadno otevřít textovým editorem a celý jeho obsah označit a zkopírovat do schránky (Ctrl-C). Předložte nyní obsah schránky webu CAcert, jak bylo popsáno výše. Výsledný certifikát ve tvaru PEM stáhněte jako soubor s příponou .crt.
Teď máte jak nový certifikát, tak odpovídající privátní klíč, což je privátní klíč odpovídající odvolanému i novému certifikátu. Pro některé programy je to dostatečné, ale pro prohlížeče potřebujete vytvořit "záložní" soubor *.p12/*.pfx; k tomu použjte příkaz:
openssl pkcs12 -in <vystaveny_certifikat>.crt -inkey <odvol_priv_klic>.key -export -out <zaloha>.p12
K tomu musíte zadat heslo privátního klíče (1x) a heslo pro záložní soubor (2x).
Soubor <zaloha>.p12 obsahuje certifikát a odpovídající privátní klíč. Lze ho importovat Správcem certifikátů jako osobní (Personal).