Der Registrierungsdienst für Netzwerkgeräte (NDES) verfügt über die Möglichkeit, sich mit einem bereits ausgestellten Zertifikat zu authentifizieren, um ein inhaltlich gleiches Zertifikat erneut zu beantragen. Dies ist sehr praktisch für Erneuerungs-Operationen, da somit der Bedarf entfällt, vorher ein One-Time Passwort zu beantragen.
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)".
Die Beantragung und Erneuerung von Zertifikaten über NDES ist auch mit der Windows PowerShell Modul PSCertificateEnrollment möglich. Siehe Artikel "Authentifizierung am Registrierungsdienst für Netzwerkgeräte (NDES) mit einem existierenden Zertifikat (Renewal-Modus)".
Die Authentifizierung mit einem bereits vorhandenen Zertifikat ist im RFC für NDES beschrieben.
If the client already has a certificate issued by the SCEP CA, and the CA supports renewal (see Section 2.5), that certificate SHOULD be used.
RFC 8894
Entsprechend ist die Funktion auch in der Microsoft-Umsetzung, dem Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES) implementiert.
The NDES supports certificate renewal where a device uses a previously issued certificate to validate the new certificate request.
Active Directory Certificate Services (AD CS): Network Device Enrollment Service (NDES) (Microsoft)
Der Renewal-Modus ist in der Standardkonfiguration des NDES bereits aktiviert. Wer auf Nummer sicher gehen will, kann über Aufruf der folgende Adresse auf dem NDES Server die aktivierten Funktionen überprüfen.
http://{Servername-oder-Alias}/certsrv/mscep/mscep.dll/pkiclient.exe?operation=GetCACaps
Erneuerung mit Bordmitteln
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.
Um eine Authentifizierung mit einem bestehenden Zertifikat vorzunehmen, muss in der Konfigurationsdatei für die Anforderung den SHA1-Fingerabdruck eines vorhandenen Zertifikats als Wert "RenewalCert" eintragen.
Das verwendete Zertifikat muss die gleiche Identität sowie von der gleichen Zertifizierungsstelle ausgestellt worden sein wie der neue Zertifikatantrag. Ein spezieller Extended Key Usage wie bei der Key-based Renewal der Zertifikatregistrierungs-Webdienste (CEP, CES) ist nicht erforderlich.
Den SHA1-Fingerabdruck findet man in der Karteikarte "Details" im Eigenschaften-Dialog eines Zertifikats.
Anschließend kann die Zertifikatanforderung mit folgendem Kommandozeilenbefehl erzeugt werden:
certreq -config {Servername-oder-Alias} -new {INF-Datei} {CSR-Datei}
Man bekommt einen Auswahl-Dialog präsentiert, in welchem man das zuvor anhand des Fingerabdrucks identifizierte Zertifikat wiederfindet.
Mit folgendem Kommandozeilenbefehl kann die Anforderung an den NDES-Server gesendet werden.
certreq -v -config {Servername-oder-Alias} -submit {CSR-Datei} {Zertifikat-Datei}
Das ausgestellte Zertifikat kann mit folgendem Kommandozeilenbefehl anschließend auf dem System installiert werden.
certreq -accept {Zertifikat-Datei}
Für die Beantragung kann auch folgendes Script verwendet werden:
@echo off set SERVER= :: hier Servername oder Alias eintragen set THUMBPRINT= :: hier SHA1-Fingerabdruck des alten Zertifikats eintragen set INFFILE=ndesrenew_request.inf set REQFILE=ndesrenew_request.req set CRTFILE=ndesrenew_certificate.cer set SUBJECT=TestNDESCert set MACHINEKEYSET=false set KEYLENGTH=2048 del /s /q %INFFILE% del /s /q %REQFILE% del /s /q %CRTFILE% echo [NewRequest] > %INFFILE% echo Subject = "CN=%SUBJECT%" >> %INFFILE% echo RequestType = SCEP >> %INFFILE% echo KeyLength = %KEYLENGTH% >> %INFFILE% echo MachineKeySet = %MACHINEKEYSET% >> %INFFILE% echo RenewalCert = "%THUMBPRINT%" >> %INFFILE% echo Contacting %SERVER% and building request certreq -v -config %SERVER% -new %INFFILE% %REQFILE% pause echo Sending Request to CA certreq -v -config %SERVER% -submit %REQFILE% %CRTFILE% pause echo Installing the Certificate certreq -accept %CRTFILE% pause
Erneuern mit der Windows PowerShell
Die Erneuerung kann auch mit dem PSCertificateEnrollment PowerShell Modul vorgenommen werden. Hierzu siehe Artikel "Zertifikatbeantragung für Windows-Systeme über den Registrierungsdienst für Netzwerkgeräte (NDES) mit Windows PowerShell".
Weiterführende Links
Externe Quellen
- Active Directory Certificate Services (AD CS): Network Device Enrollment Service (NDES) | Certificate Renewal (Microsoft)
- certreq | Microsoft Docs (Microsoft)
- RFC 8894 – Simple Certificate Enrolment Protocol (Internet Engineering Task Force)
- draft-nourse-scep-23 – Simple Certificate Enrollment Protocol (Internet Engineering Task Force)
3 Gedanken zu „Authentifizierung am Registrierungsdienst für Netzwerkgeräte (NDES) mit einem existierenden Zertifikat (Renewal-Modus)“
Kommentare sind geschlossen.