Der Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES) verwendet zwei Zertifikatvorlagen für seine interne Funktion, um ihn als Registrierungsstelle (Registration Authority, RA) wirken zu lassen. Diese werden während der Rollenkonfiguration des NDES Dienstes auf der konfigurierten Zertifizierungsstelle veröffentlicht und Zertifikate werden beantragt:
- CEP Encryption
- Exchange Enrollment Agent (Offline Request)
Bei diesen Zertifikatvorlagen handelt es sich um Standardvorlagen aus der Windows 2000 Welt (Version 1 Vorlagen), d.h. sie können nicht bearbeitet werden. Darüber hinaus ist die Exchange Enrollment Agent (Offline Request) Vorlage als Benutzervorlage gekennzeichnet, d.h. während der NDES Rollenkonfiguration wird das Zertifikat im Kontext des installierenden Benutzers beantragt und anschließend in den Maschinenspeicher importiert. Spätestens, wenn die Zertifikate nach zwei Jahren erneuert werden sollen, wird es hier kompliziert.
Daher bietet es sich an, eigene Zertifikatvorlagen für NDES zu verwenden. Diese können beispielsweise in Hinsicht auf ihre Schlüssellänge angepasst werden. Auch die Verwendung von Hardware Security Modulen (HSM) ist auf diese Weise möglich. Sogar eine automatische Erneuerung kann konfiguriert werden.
Der Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES) bietet eine Möglichkeit, Geräten, welche nicht über eine Kennung im Active Directory verfügen (beispielsweise Netzwerkgeräte wie Router, Switches, Drucker, Thin Clients oder Smartphones und Tablets), Zertifikate von einer Zertifizierungsstelle zu beantragen. Für eine detailliertere Beschreibung siehe Artikel "Grundlagen Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES)".
NDES verwendet darüber hinaus eine Zertifikatvorlage für die angebundenden Geräte. Die Einrichtung ist im Artikel "Gerätevorlage für den Registrierungsdienst für Netzwerkgeräte (NDES) konfigurieren" beschrieben. Darüber hinaus wird der Dienst optional per HTTPS angeboten. Die Einrichtung ist im Artikel "Secure Sockets Layer (SSL) für den Registrierungsdienst für Netzwerkgeräte (NDES) aktivieren" beschrieben.
Eigene Zertifikatvorlage für CEP Encryption konfigurieren
Kennen Sie TameMyCerts? TameMyCerts ist ein Add-On für die Microsoft Zertifizierungsstelle (Active Directory Certificate Services). Es erweitert die Funktion der Zertifizierungsstelle und ermöglicht die Anwendung von Regelwerken, um die sichere Automatisierung von Zertifikat-Ausstellungen zu realisieren. TameMyCerts ist einzigartig im Microsoft-Ökosystem, hat sich bereits in unzähligen Unternehmen auf der ganzen Welt bewährt und steht unter einer freien Lizenz. Es kann über GitHub heruntergeladen und kostenlos verwendet werden. Professionelle Wartung wird ebenfalls angeboten.
Die CEP Encryption Vorlage wird für die Verschlüsselung der Zertifikatanforderung während des Transfers an die Zertifizierungsstelle eingestezt. Das SCEP-Protokoll wurde ursprünglich für die Verwendung ohne HTTPS (HTTP über Secure Socket Layer, SSL) konzipiert, sodass die Verschlüsselung hier auf Protokollebene stattfindet.
Die Kerneigenschaften der Vorlage, nach welcher der NDES Prozess beim Start suchen wird, sind:
- Key Usage: Key Encipherment (0x20)
- Extended Key Usage: Certificate Request Agent (1.3.6.1.4.1.311.20.2.1)
Als Ausgangs-Vorlage wird die Standardvorlage "CEP Encryption" ("CEP-Verschlüsselung" im deutschen) verwendet und eine Kopie erstellt.
Sofern man für den NDES Dienst ein Domänenkonto verwendet, können die Berechtigungen auf die privaten Schlüssel direkt in der Zertifikatvorlage konfiguriert werden. Hierzu muss im Karteireiter "Compatibility" die Kompatibilität der Vorlage auf Windows Server 2012 R2 konfiguriert werden.
Im Karteireiter "General" wird ein aussagekräftiger Name vergeben.
Sofern die Berechtigungen auf den privaten Schlüssel über die Vorlage gesetzt werden können und sollen, können diese im Karteireiter "Request Handling" vergeben werden.
Im Karteireiter "Cryptography" können eine höhere Schlüssellänge sowie optional ein Hardware Security Modul (HSM) Cryptographic Service Provider (CSP) konfiguriert werden.
Es werden nur die "alten" Cryptographic Service Provider (CSP) unterstützt. Key Storage Provider, wie sie seit Windows Server 2008 zur Verfügung stehen, werden von NDES nicht unterstützt.
Der CSP für ein HSM muss auf dem NDES-System zuvor installiert und eingerichtet worden sein, damit er verwendet werden kann. Das System, auf welchem die Zertifikatvorlage konfiguriert wird, muss den CSP ebenfalls installiert haben, damit er bei der Konfiguration der Zertifikatvorlage auswählbar ist.
Der CSP für das HSM wird nur angezeigt, wenn er auf dem System, auf welchem die Zertifikatvorlage konfiguriert wird, auch installiert ist.
In der NDES-Installationsroutine ist der Microsoft RSA SChannel Cryptographic Provider vorausgewählt.
Im Karteireiter "Subject Name" kann die Identität aus dem Active Directory gebildet werden. Es empfiehlt sich, sowohl Subject (Common Name) als auch Subject Alternative Name (DNS name) zu befüllen.
Im Karteireiter "Security" bekommt das Computerkonto des NDES-Servers Rechte zur Beantragung.
Eine Automatische Beantragung (Autoenrollment) ist ebenfalls möglich, jedoch ist dies nicht empfehlenswert, da Nacharbeiten erforderlich sind (ggfs. Setzen der Schlüsselberechtigungen und Neustart des NDES Dienstes).
Damit Computerkonten in die Suche einbezogen werden, muss der entsprechende Objekttyp im Suchdialog ausgewählt werden.
Eigene Zertifikatvorlage für Exchange Enrollment Agent (Offline Request) konfigurieren
Die Exchange Enrollment Agent Vorlage wird verwendet, um die Zertifikatanforderung vor der Übermittlung an die Zertifizierungsstelle zu signieren und somit sicherzustellen, dass diese tatsächlich vom NDES Dienst, welcher hier als Registrierungsstelle agiert, stammt.
Die Kerneigenschaften der Vorlage, nach welcher der NDES Prozess beim Start suchen wird, sind:
- Key Usage: Digital Signature (0x80)
- Extended Key Usage: Certificate Request Agent (1.3.6.1.4.1.311.20.2.1)
In der Standardeinstellung wird die Signatur der Zertifikatanforderung nicht von der Zertifizierungsstelle überprüft, was jedoch durchaus sinnvoll ist und konfiguriert werden sollte. Wie das gemacht wird, wird im Artikel "Gerätevorlage für den Registrierungsdienst für Netzwerkgeräte (NDES) konfigurieren" beschrieben.
Als Ausgangs-Vorlage wird nicht die Standardvorlage "Exchange Enrollment Agent (Offline Request)" verwendet, da es sich hierbei und eine Benutzer-Vorlage handelt, die angepasste Vorlage jedoch für einen Computer konfiguriert werden soll. Stattdessen wird die ansonsten identische Vorlage "Enrollment Agent (Computer)" ("Registrierungs-Agent (Computer)" im deutschen) verwendet und eine Kopie erstellt.
Sofern man für den NDES Dienst ein Domänenkonto verwendet, können die Berechtigungen auf die privaten Schlüssel direkt in der Zertifikatvorlage konfiguriert werden. Hierzu muss im Karteireiter "Compatibility" die Kompatibilität der Vorlage auf Windows Server 2012 R2 konfiguriert werden.
Im Karteireiter "General" wird ein aussagekräftiger Name vergeben.
Sofern die Berechtigungen auf den privaten Schlüssel über die Vorlage gesetzt werden können und sollen, können diese im Karteireiter "Request Handling" vergeben werden.
Im Karteireiter "Cryptography" können eine höhere Schlüssellänge sowie optional ein Hardeware Security Modul (HSM) Cryptographic Service Provider (CSP) konfiguriert werden.
Es werden nur die "alten" Cryptographic Service Provider (CSP) unterstützt. Key Storage Provider, wie sie seit Windows Server 2008 zur Verfügung stehen, werden von NDES nicht unterstützt.
Der CSP für ein HSM muss auf dem NDES-System zuvor installiert und eingerichtet worden sein, damit er verwendet werden kann. Das System, auf welchem die Zertifikatvorlage konfiguriert wird, muss den CSP ebenfalls installiert haben, damit er bei der Konfiguration der Zertifikatvorlage auswählbar ist.
Der CSP für das HSM wird nur angezeigt, wenn er auf dem System, auf welchem die Zertifikatvorlage konfiguriert wird, auch installiert ist.
In der NDES-Installationsroutine ist der Microsoft Enhanced Cryptographic Provider v1.0 vorausgewählt.
Im Karteireiter "Subject Name" kann die Identität aus dem Active Directory gebildet werden. Es empfiehlt sich, sowohl Subject (Common Name) als auch Subject Alternative Name (DNS name) zu befüllen.
Im Karteireiter "Security" bekommt das Computerkonto des NDES-Servers Rechte zur Beantragung. Eine Automatische Beantragung (Autoenrollment) ist ebenfalls möglich.
Veröffentlichen der Zertifikatvorlagen
Die beiden Vorlagen können nun auf der Zertifizierungsstelle veröffentlicht werden.
Beantragen der Registration Authority Zertifikate
Anschließend können die Zertifikate über die Zertifikats-Managementkonsole des Computerkontos (certlm.msc) des NDES Servers aus beantragt werden.
Sollten mehrere Zertifizierungsstellen die hier beschriebenen Zertifikatvorlagen anbieten, wird bei der Beantragung eine Zertifizierungsstelle per Zufallsprinzip ausgewählt, was dazu führen kann, dass die Zertifikate von der falschen Zertifizierungsstelle ausgestellt werden. NDES wird in diesem Fall den Dienst verweigern. Daher sollten die hier beschriebenen Zertifikatvorlagen immer nur vorübergehen auf der Zertifizierunggsstelle veröffentlicht werden, für deren NDES Server aktuell neue Zertifikate beantragt werden sollen.
Berechtigungen auf private Schlüssel setzen
Sofern in den Zertifikatvorlagen im Karteireiter "Request Handling" die Berechtigungen auf die privaten Schlüssel nicht konfiguriert wurden, oder NDES mit der Identität des IIS Anwendungsppols läuft, müssen die Berechtigungen auf die privaten Schlüssel beider Zertifikate manuell gesetzt werden. Dies erfolgt über die Managementkonsole für Computerzertifikate (certlm.msc).
Das NDES Dienstkonto benötigt Leserechte auf die privaten Schlüssel beider Zertifikate.
Leider kann man die SCEP IIS Applikationspool-Identität nicht über die Zertifikate-Managementkonsole konfigurieren. Man findet aber hier ein PowerShell Script, mit welchem dieses erledigt werden kann.
Weiterführende Links:
- Gerätevorlage für den Registrierungsdienst für Netzwerkgeräte (NDES) konfigurieren
- Secure Sockets Layer (SSL) für den Registrierungsdienst für Netzwerkgeräte (NDES) aktivieren
- Der Registrierungsdienst für Netzwerkgeräte (NDES) protokolliert die Fehlermeldung "The Network Device Enrollment Service cannot retrieve one of its required certificates (0x80070057). The parameter is incorrect."
13 Gedanken zu „Eigene Registration Authority (RA) Zertifikatvorlagen für den Registrierungsdienst für Netzwerkgeräte (NDES) verwenden“
Kommentare sind geschlossen.