Tematický týden – Public Key Infrastrukture (PKI), díl 1.

…díl první, návrh certifikační autority

Základním stavebním prvkem každého PKI je certifikační autorita, která má za úkol vystavovat a případně také zneplatňovat digitální certifikáty. Při návrhu celého řešení si musíme umět odpovědět na celou řadu důležitých otázek: Kolik úrovní bude celá hierarchie PKI mít? Je výhodné integrovat certifikační autoritu do Active Directory? Jakou délku klíče zvolit? Certifikát kořenové certifikační autority by měl mít platnost 1 rok nebo 20 let? Na tyto a mnohé další otázky naleznete odpověď v úvodním prvním díle seriálu o PKI.

1. Vlastní certifikační autorita nebo komerční?

Na tuto otázku samozřejmě neexistuje vždy stejná odpověď. Pokud potřebuji například vystavit jeden digitální certifikát pro webový server, bude výhodnější ho pořídit nákupem od komerční CA. Naopak pokud budu řešit požadavek na automatické vystavení certifikátů pro EFS v prostředí AD s několika tisíci uživateli, je určitě efektivnějším řešením vlastní CA. Pro správné rozhodnutí pojďme shrnout výhody a nevýhody obou možností.

Výhody vlastní CA:

  • Cena: s rostoucím počtem certifikátů klesá cena za 1 certifikát
  • Flexibilita: parametry certifikátů, certifikační politiky atd. si mohu stanovit dle potřeby
  • Rozšiřitelnost: přidání uživatelů či nových typů certifikátů je velmi snadné a málo nákladné
  • Integrace do AD: přináší celou řadu výhod. Např. autoenrollment, který dramaticky zjednodušuje proces vystavení certifikátů a snižuje tak náklady na implementaci i následnou správu.

Výhody komerční CA:

  • Důvěryhodnost: při správně zvolené CA budou vydané certifikáty důvěryhodné i externě
  • Rychlost: nemusím navrhovat ani implementovat vlastní PKI a certifikát mohu získat prakticky ihned
  • Právní aspekt: kvalifikované certifikáty od státem akreditované CA mohu potřebovat např. pro podání daňového přiznání, komunikaci se státní správou apod.

2. Kolik úrovní bude mít hierarchie certifikačních autorit?

Důvodů proč nemít jednu jedinou CA, ale budovat hierarchii o několika úrovních je hned několik:

  • Distribuce rizika: pokud dojde ke kompromitaci 1 z 10 podřízených online autorit je dopad mnohem nižší než když je napadena CA v jednoúrovňovém systému PKI, která vystavuje 100% certifikátů.
  • Flexibilita: není problém přidání nového AD forestu, zapojení jiné než Microsoft CA do hierarchie atd.
  • Bezpečnost: zatímco vystavující CA bývá kvůli dostupnosti zpravidla online, naopak kořenová CA může být offline a tak je při dobrém fyzickém zabezpečení prakticky nenapadnutelná.

V zásadě je možné vybrat ze tří modelů:

1 úroveň – vhodné pro menší řešení a nízký počet vystavovaných certifikátů. Je to jednoduché a levné řešení, které je ale zároveň nejméně flexibilní a bezpečné.

2 úrovně – toto řešení nejčastěji odpovídá potřebám společnosti. První úrovní je offline kořenová CA, na druhé úrovni jsou online vystavující CA. Řešení je bezpečné, flexibilní, ale přesto stále přehledné a snadno spravovatelné.

3 úrovně – řešení pro velké organizace s maximální úrovní bezpečnosti. První úrovní je offline kořenová CA, na druhé úrovni jsou offline CA oddělující části PKI s různou bezpečnostní politikou, na třetí jsou pak vystavující online CA.

image Obrázek 1 Hierarchie PKI s 3 úrovněmi

3. Integrovat certifikační autoritu do AD či nikoliv (Enterprise/Standalone)?

Intergace CA do Active Directory (režim Enterprise) má celou řadu přínosů oproti režimu bez AD (režim Standalone). Mezi nejdůležitější patří:

  • Žádost o certifikát je potvrzena/zamítnuta automaticky na základě informací v AD
  • Certifikáty i seznamy zneplatněných certifikátů mohou být publikovány přímo do AD
  • Subjekt žádá o certifikát prostřednictvím šablon certifikátů. Přístup k šablonám je řízen oprávněními v rámci Active Directory
  • Enterprise režim je podmínkou pro řadu funkcí jako je archivace privátního klíče, autoenrollment apod.

Enterprise režim je tak typicky vyžíván pro vystavující online CA, standalone je zase naopak vhodný pro kořenovou offline CA nebo do prostředí bez Active Directory.

4. Musím řešit vysokou dostupnost? Jaké jsou možnosti zajištění vysoké dostupnosti CA?

V zásadě se dá říci, že krátkodobý výpadek nemá obvykle u toho typu služby žádný závažnější dopad. Jakmile mám k dispozici vystavený a platný digitální certifikát, certifikační autoritu do doby obnovování platnosti vlastně vůbec nepotřebuji.

Pozor. Výjimkou jsou ale scénáře, kde se používají certifikáty s krátkou dobou platnosti. Například 4hodinový výpadek CA při požití technologie Network Access Protection (NAP) znamená odpojení všech počítačů od sítě! Abychom takovouto nezáviděníhodnou situaci nezažily, řešením je:

  • Redundance – danou šablonu certifikátu vypublikujeme na více různých CA
  • Clustering – od verze Windows Server 2008 je podporován také failover clustering této role

5. Jakou platnost certifikátů CA zvolit?

Zde existuje jednoznačné doporučení:

  • Kořenová Standalone CA – 20 let
  • Zprostředkující Standalone CA – 10 let
  • Vystavující Enterprise CA – 5 let

Kromě stanovení platnosti je také třeba určit, kdy se bude provádět obnova certifikátu. CA nikdy nesmí vystavit certifikát s delší platností než je platnost jejího vlastního certifikátu. Prakticky to tedy znamená, že kořenová CA po 18 letech již nemůže vystavit certifikát pro zprostředkující CA s platností 10 let, neboť sama má certifikát, který bude platný již jen 2 roky. Řešením je každých 10 let provádět obnovu certifikátu kořenové CA. Tímto způsobem musíme stanovit pravidla pro obnovování certifikátu každé CA.

6. Jakou délku klíče zvolit?

Doporučení jsou následující:

  • Kořenová Standalone CA – 4096 bitů
  • Zprostředkující Standalone CA – 2048 bitů
  • Vystavující Enterprise CA – 2048 bitů

V roce 2008 byl prolomen klíč RSA o délce 663 bitů a nyní se dokončuje prolomení klíče o délce 768 bitů. Je tedy více než zřejmé, že častou používaná délka 1024 bitů to bude mít dříve či později také již spočítané a pro certifikáty s delší dobou platnosti bychom ji již proto neměli využívat.

Závěr

V tomto článku jsme vysvětlili základní parametry certifikační autority, které musíme mít rozhodnuty a určeny ještě před vlastní implementací. Příští díl bude zaměřen více prakticky a podíváme se společně na úskalí a doporučení pro nejběžnější variantu dvouúrovňového PKI – kořenová Standalone CA a pod ní zapojená vystavující Enterprise CA.

- Miroslav Knotek – (Microsoft MVP: Security), IT Senior Consultant KPCS CZ, s.r.o.