Konfigurace CRL (Certificate Revocation List) na Windows Certificates Authority

Jan Holan       22. 7. 2013       Bezpečnost, IT       7443 zobrazení

Pokud vytváříte certifikáty například pro Remote Desktop, TS Gateway, TS Web Access a podobně, je nutné mít ve své PKI infrastruktuře na certifikační autoritě fungující a správně nastavené publikace CRL (Certificate Revocation List). (Klasická chyba, kterou dostáváme, když toto nemáme správně nastaveno je A revocation check could not be performed for the certificate).

Konfigurace CA

Nejprve nakonfigurujeme doménovou Windows certifikační autoritu.

  • Spustíme konzoli certifikační autority Administrative Tools - Certification Authority.
  • Zvolíme vlastnosti na nainstalované certifikační autoritě a zvolíme záložku Extensions.
  • Zde k již uvedeným umístění CRL Distribution Point - CDP a Authority Information Access - AIA (potřebujeme obě) přidáme nové HTTP lokace, které budeme používat pro přístup z internetu.

image

Pro CDP například pro DNS veřejnou adresu pki.contoso.com zadáme následující URL adresu:

http://pki.contoso.com/CertEnroll/<CaName><CRLNameSuffix><DeltaCRLAllowed>.crl

(pozor, jedná se o certificate revocation list – přípona crl)
Zde také zaškrtneme volby Include in CRLs. Client use this to find Delta CRL locations a Include in the CDP extension of issued certificates.

a pro AIA tuto adresu:

http://pki.contoso.com/CertEnroll/<ServerDNSName>_<CaName><CertificateName>.crt

(pozor, jedná se o certifikát autority – přípona crt)
zde zvolíme Include in the AIA extension od issued certificates.

  • Vytvoříme nový CRL list volbou Publish na Revoked Certificates v CA konzoli.

Konfigurace IIS

O přístup k CDP a AIA slouží složka CertEnroll na IIS. K tomu potřebujeme mít nainstalovanou Web Server roli s podporou ASP (ale nemusíme mít nainstalovanou CA roli Certification Authority Web Enrollment ani žádný Web Service). V IIS potřebujeme složku CertEnroll, pokud jí zde nemáme, provedeme její nastavení příkazem:

certutil –vroot 

Jedná se o složku umístěnou v C:\Windows\system32\CertSrv\CertEnroll, která obsahuje soubory crl listů a certifikát autority. Protože jeden soubor má defaultně v názvu znak +, tak musíme na IIS povolit Double Escaping. To provedeme následujícími příkazy:

cd %windir%\system32\inetsrv\
Appcmd set config "Default Web Site" /section:system.webServer/Security/requestFiltering -allowDoubleEscaping:True
iisreset

Vypublikování CertEnroll

Složku CertEnroll na IIS je nyní nutné vypublikovat na firewallu, aby byla veřejně dostupná, a to na adrese, kterou jsme zadali v Extensions v CA. Vytvoříme tedy na FW HTTP pravidlo, které bude z veřejné adresy pki.contoso.com směrovat na vnitřní server na kterém máme IIS se složkou CertEnroll. HTTP adresy, které potřebujeme vypublikovat zjistíme velice jednoduše podle jmen souborů ve složce C:\Windows\system32\CertSrv\CertEnroll. Například pro CA s názvem ContosoCA a server s názvem pki jsou to:
/certenroll/ContosoCA.crl
/certenroll/ContosoCA+.crl
/certenroll/pki.contoso.local_ContosoCA.crt

(Pokud váš FW neumí určit jednotlivé adresy, je možné vypublikovat celou složku CertEnroll.)

Já jsem publikaci prováděl na TMG, k tomu je podrobnější návod k dispozici zde nebo zde.

Kontrola nastavení

Otestujeme nastavení, to můžeme provést pomoci Enterprise PKI. Spustíme PKIView.msc, zde vidíme zda jsou CDP a AIA dostupné.

image

Druhou možnosti kontroly je pomoci certutil následujícími příkazy:

certutil -URL http://pki.contoso.com/CertEnroll/ContosoCA.crl
certutil -URL http://pki.contoso.com/CertEnroll/pki.contoso.local_ContosoCA.crt

V prvním případě zvolíme CRLs a dáme Retrieve, obě adresy jak Base CRl tak Delta CRL musí vrátit OK. V druhém případě zvolíme volbu Certs a Retrieve.

Pokud vydáme certifikát, tak máme ještě možnost zkontrolovat dostupnost CDP a AIA z adres certifikátu pomoci příkazu:

certutil –verify –urlfetch MyCertificate.cer

Některé další odkazy, které jsem při konfiguraci CRL používal:
http://social.technet.microsoft.com/wiki/contents/articles/11750.step-by-step-guide-single-tier-pki-hierarchy-deployment.aspx#Install_Enterprise_Root_CA
http://www.kurtdillard.com/StudyGuides/70-640/6.html

 

hodnocení článku

0       Hodnotit mohou jen registrované uživatelé.

 

Nový příspěvek

 

České názvy

Tak jsem zjistil, že na serveru s nastavením českého prostředí tam jsou přeložené i ty zástupné řetězce. Pro české prostředí je nastavení tedy toto (hrůza):

CDP:

http://pki.contoso.com/CertEnroll/<Název_certifikační_autority><Přípona_názvu_seznamu_CRL><Rozdílový_seznam_CRL_povolen>.crl

AIA:

http://pki.contoso.com/CertEnroll/<Název_DNS_serveru>_<Název_certifikační_autority><Název_certifikátu>.crt

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Doplnění

Ještě doplnění.

Pro správné fungování VPN ověřování s certifikáty (například SSTP, IPSec, Direct Access) je lepší nastavit do CRL Distribution Pointu (CDP) a AIA pouze jedno umístění a to http, které bude validní vnitřně i zvenčí.

Ponecháme tedy pouze

CDP:

C:\Windows\system32\CertSrv\CertEnroll\<CaName><CRLNameSuffix><DeltaCRLAllowed>.crl (Publish CRLs, Publish Delta CRLs)

http://pki.contoso.com/CertEnroll/<CaName><CRLNameSuffix><DeltaCRLAllowed>.crl (Include in CRLs, Include in the CDP)

AIA:

C:\Windows\system32\CertSrv\CertEnroll\<ServerDNSName>_<CaName><CertificateName>.crt

http://pki.contoso.com/CertEnroll/<ServerDNSName>_<CaName><CertificateName>.crt (Include in the AIA extension of issued certificates)

Aby se adresa zevnitř přeložila, můžeme zařídit například tak, že na vnitřním DNS vytvoříme novou zónu pki.contoso.com,

kde přidáme jeden A záznam s prázdným jménem.

Takto vytvořená zóna je lepší než celá zóna contoso.com se záznamem pki, protože pokud nebude obsahovat nějaký jiný záznam, tak v případě celé zóny contoso.com se nenajde, kdyžto v případě pki.contoso.com se neexistující záznam zjistí z veřejného DNS.

Jak provést toto nastavení také najdete na WUG přednášce VPN a Direct Access Ondřeje Ševečka zde:

http://www.wug.cz/zaznamy/206-VPN-a-Dire...

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.

Nyní zakládáte pod článkem nové diskusní vlákno.
Pokud chcete reagovat na jiný příspěvek, klikněte na tlačítko "Odpovědět" u některého diskusního příspěvku.

Nyní odpovídáte na příspěvek pod článkem. Nebo chcete raději založit nové vlákno?

 

  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback