Installation einer zweistufigen PKI unter Windows (Teil 1)

Zertifikate werden auch im Unternehmensnetwerk immer wichtiger. Viele Services können inzwischen SSL/TLS umgehen. Voraussetzungen dafür ist, dass ein SSL-Zertifikat zur Verfügung gestellt wird. Im folgenden Artikel beschreibe ich die Installation einer internen, zweistufigen Zertifizierungsstelle mit Hilfe von Windows Server 2012R2. Je größer das Unternehmen ist, desto mehr Planung bezüglich Anforderung, Installation, Betrieb und Organisation wird erforderlich sein.

Ich möchte mit diesem Artikel einen kleinen Einblick in das Thema geben. Dies ersetzt in keinem Fall eine ordentliche Planung bezogen auf die jeweiligen Gegebenheiten der jeweiligen Umgebung!

Aufbau der Umgebung

2pki-aufbau

Voraussetzungen
– Funktionstüchtige Active Directory-Domäne (in meinen Fall Windows Server 2012R2)
– VM mit Windows Server 2012R2, die nicht Mitglied in der Domäne ist (DNS-Name: pki01).
– VM mit Windows Server 2012R2, die Mitglied in der Domäne ist (DNS-Name: pki02).
– Der Servername und DNS-Suffix können nach der Installation der entsprechenden Rolle(n)nicht mehr verändert werden!

Installation der Stammzertifizierungsstelle
Diese VM (pki01) dient dazu um allen Unterzertifizierungsstellen (SubCA) ein Zertifiakt auszustellen bzw. erneuern. Diese stellt später keinerlei Zertifikate für Webdienste, SIME o.ä. aus! Die VM wird nach der Ausstellung der Zertifikate und Sperrlisten heruntergefahren und gut versteckt. Somit ist eine Kompromittierung nicht ohne weiteres möglich. Des Weiteren wäre es später möglich, dass die Stammzertifizierungsstelle mit Hilfe von z.B. GlobalSigns Trusted Root zu validieren und somit sind alle ausgestellten Zertifiakte der Unterzertifizierungsstelle auch im Internet ohne weiteres gültig.

2stufige-pki-rootca-install-step01

2stufige-pki-rootca-install-step02

2stufige-pki-rootca-install-step03

2stufige-pki-rootca-install-step04

2stufige-pki-rootca-install-step05

2stufige-pki-rootca-install-step06

2stufige-pki-rootca-install-step07

2stufige-pki-rootca-install-step08

2stufige-pki-rootca-install-step09

2stufige-pki-rootca-install-step10

2stufige-pki-rootca-install-step11

2stufige-pki-rootca-install-step12

2stufige-pki-rootca-install-step13

2stufige-pki-rootca-install-step14

2stufige-pki-rootca-install-step15

2stufige-pki-rootca-install-step16

2stufige-pki-rootca-install-step17

2stufige-pki-rootca-install-step18

2stufige-pki-rootca-install-step19
Der Name der Zertifizierungsstelle kann frei gewählt werden. Dieser Name wird später im Zertifkatsspeicher angezeigt.

2stufige-pki-rootca-install-step20
Die Laufzeit sollte sorgfältig gewählt werden. Die Laufzeit des auszustellenden Zertifikates kann nicht die Restlaufzeit des Zertifikats der ausstellenden Stammzertifizierungsstelle übersteigen. Daher sollten die Laufzeit für die Stammzertifizierungsstelle mindestens doppelt so lange sein, wie später die Laufzeit der Unterzertifizierungsstelle. In meinen Fall RootCA: 20 Jahre, SubCA: 10 Jahre.

2stufige-pki-rootca-install-step21

2stufige-pki-rootca-install-step22

2stufige-pki-rootca-install-step23


=================================================
Konfiguration der Stammzertifizierungsstelle
=================================================

2stufige-pki-rootca-config-step01

2stufige-pki-rootca-config-step02

2stufige-pki-rootca-config-step03

2stufige-pki-rootca-config-step04

2stufige-pki-rootca-config-step05

2stufige-pki-rootca-config-step06

2stufige-pki-rootca-config-step07
Bei der neuen Adresse habe ich absichtlich pki statt pki01 angegeben. Es handelt sich dabei um einen Eintrag im DNS-Server vom Typ CNAME. Dieser Eintrag verweist auf den Host pki02. Durch die Installation der Rolle auf pki01 wird das Zertifikat als auch die Sperrliste abgelegt. Damit später geprüft werden kann, ob das Zertifikat der Zwischenzeritfizierungstelle noch gültig ist, muss die Sperrliste erreichbar sein. Die pki01 wird nach dem Ausstellen der benötigten Zertifkate heruntergefahren und weggeschlossen. Somit ist die Sperrliste nicht mehr erreichbar. Durch die Installation der Rolle „Zertifizierungsstelle“ auf pki02 und Aktivierung der Funktion „Zertifikatsregistierungs-Webdienst“ wird parallel der IIS-Server (Webserver) mitinstalliert. Somit bietet es sich an, dort die beiden Dateien der pki01 abzulegen. Selbstverständlich kann dafür auch ein anderer (Web)server hergenommen werden.

Die Stammzertifizierungsstelle wird irgendwann mal auf eine neue VM mit einem neuen Hostnamen umgezogen. Da ein DNS-Alias verwendet wurde, spielt der Hostname keine Rolle. Denn in den Zertifikatseigenschaften taucht ausschließlich der CNAME pki auf.

2stufige-pki-rootca-config-step08

2stufige-pki-rootca-config-step09

2stufige-pki-rootca-config-step10

2stufige-pki-rootca-config-step11

2stufige-pki-rootca-config-step12

2stufige-pki-rootca-config-step13
Hier gilt das gleiche wie bereits beim Sperrlisten-Verteilungspunkt erläutert.

2stufige-pki-rootca-config-step14
Abschließend erscheint der Hinweis, das durch die Anpassungen der Active Directory-Zertifikatsdienste neugestartet werden müssen. Mit „Ja“ bestätigen.


=================================================
Parameter für die Sperrlistenveröffentlichung
=================================================

2stufige-pki-rootca-configcrl-step01
Damit hat die Sperrliste der pki01 nach Veröffentlichung eine Gültigkeit von einem Jahr. Daher eine Erinnerung in den Kalender setzen, dass man nach 11 Monaten die Sperrliste erneuern muss.

2stufige-pki-rootca-configcrl-step02

2stufige-pki-rootca-configcrl-step03

2stufige-pki-rootca-configcrl-step04


=================================================
Gültigkeitsdauer auszustellender Zertifikate
=================================================

Die Gültigkeitsdauer eines Zertifikats ist standardmäßig ein Jahr. Das ist für Zertifikate bezogen auf Zwischenzeritfizierungstelle (SubCA) deutlich zu kurz. Die Laufzeit darf aus meiner Sicht ruhig 10 Jahre betragen. Erfolgt eine Kompromittierung der SubCA wird einfach eine Neue aufgesetzt und das Zertifkat in der Stammzertifizierungsstelle gesperrt. Ansonsten gilt hier meine Erläuterung von Bild 20 (Laufzeit des Zertifikats).

2stufige-pki-rootca-configValidity-step01

2stufige-pki-rootca-configValidity-step02

2stufige-pki-rootca-configValidity-step03