Zertifikatbeantragung für Windows-Systeme über den Registrierungsdienst für Netzwerkgeräte (NDES) mit Windows PowerShell

Möchte man Windows-Systeme mit Zertifikaten ausrüsten, welche nicht die Möglichkeit haben, direkt mit einer Active Directory integrierten Zertifizierungsstelle zu kommunizieren, oder die sich gar überhaupt nicht in der gleichen Active Directory Gesamtstruktur befinden, bleibt in den meisten Fällen nur die manuelle Installation von Zertifikaten.

Seit Windows 8.1 / Windows Server 2012 R2 befindet sich jedoch ein integrierter Client für das Simple Certificate Enrollment Protocoll (SCEP) an Bord. Serverseitig wird SCEP über den Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES) in der Microsoft-PKI seit Windows Server 2003 implementiert.

Eine besonders interessante Eigenschaft von SCEP ist, dass das Protokoll eine Erneuerung eines Zertifikats unter Angabe eines bereits vorhandenen erlaubt. Was läge also näher, als diese Schnittstelle zu verwenden? Was noch fehlt, ist eine entsprechende Automatisierung über die Windows PowerShell.

„Zertifikatbeantragung für Windows-Systeme über den Registrierungsdienst für Netzwerkgeräte (NDES) mit Windows PowerShell“ weiterlesen

Grundlagen Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES)

Das Simple Certificate Enrollment Protocol (SCEP) wurde in den frühen 2000er Jahren von Verisign für Cisco entwickelt, um eine vereinfachte Methode zum Beantragen von Zertifikaten verwenden zu können. Zuvor musste für Netzwerkgeräte manuell eine Zertifikatanforderung auf jedem Gerät erzeugt, zu einer Zertifizierungsstelle übermittelt und anschließend das ausgestellte Zertifikat wieder manuell auf dem entsprechenden Gerät installiert werden.

„Grundlagen Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES)“ weiterlesen

Beschreibung der verschiedenen Zertifikat-Formate

X.509 Zertifikate sind grundsätzlich im Distinguished Encoding Rules (DER) Format kodiert. Hierbei handelt es sich um ein binäres, maschinenlesbares Format.

DER-kodierte Zertifikate können jedoch mit dem BASE64 Verfahren auch in ein textbasiertes Format überführt werden, sodass sie beispielsweise in einem E-Mail Body übertragen werden können. BASE64 umschließt hierbei das DER-kodierte Format, d.h. das Zertifikat ist und bleibt in jedem Fall DER-kodiert.

„Beschreibung der verschiedenen Zertifikat-Formate“ weiterlesen

Authentifizierung am Registrierungsdienst für Netzwerkgeräte (NDES) mit einem existierenden Zertifikat (Renewal-Modus)

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.

„Authentifizierung am Registrierungsdienst für Netzwerkgeräte (NDES) mit einem existierenden Zertifikat (Renewal-Modus)“ weiterlesen

Protokollierungsebene (Log Level) für das Ereignisprotokoll der Zertifizierungsstelle konfigurieren

Manche von der Zertifizierungsstelle generierten Windows-Ereignisse werden nur ab einer bestimmten Protokollierungsebene erzeugt.

Nachfolgend wird beschrieben, wie die Protokollierungsebene einer Zertifizierungsstelle bestimmt und verändert werden kann.

„Protokollierungsebene (Log Level) für das Ereignisprotokoll der Zertifizierungsstelle konfigurieren“ weiterlesen

Die Ausstellung von Zertifikaten oder Sperrlisten schlägt fehl mit Fehlercode CERTSRV_E_NO_DB_SESSIONS

Folgendes Szenario angenommen:

  • Die Zertifizierungsstelle kann keine Zertifikate ausstellen und/oder
  • Die Zertifizierungsstelle kann keine Sperrlisten ausstellen.
  • Es wird mindestens eine der folgende Fehlermeldungen protokolliert:

Ereignis-ID: 53 (Microsoft-Windows-CertificationAuthority)

Active Directory Certificate Services denied request 12345 because An attempt was made to open a Certification Authority database session, but there are already too many active sessions. The server may need to be configured to allow additional sessions. 0x8009400f (-2146877425 CERTSRV_E_NO_DB_SESSIONS). The request was for CN=Rudi Ratlos. Additional information: Denied by Policy Module

Ereignis-ID: 130 (Microsoft-Windows-CertificationAuthority)

Active Directory Certificate Services could not create a certificate revocation list. An attempt was made to open a Certification Authority database session, but there are already too many active sessions. The server may need to be configured to allow additional sessions 0x8009400f (-2146877425). This may cause applications that need to check the revocation status of certificates issued by this CA to fail. You can recreate the certificate revocation list manually by running the following command: "certutil -CRL". If the problem persists, restart Certificate Services.
„Die Ausstellung von Zertifikaten oder Sperrlisten schlägt fehl mit Fehlercode CERTSRV_E_NO_DB_SESSIONS“ weiterlesen

Die Installation einer Zertifizierungsstelle schlägt fehl mit Fehlercode ERROR_INVALID_PARAMETER

Folgendes Szenario angenommen:

  • Es wird eine Zertifizierungsstelle installiert
  • Die Rollenkonfiguration schlägt mit folgender Fehlermeldung fehl:
CCertSrvSetupProperty: The parameter is incorrect. 0x80070057 (WIN32: ERROR_INVALID_PARAMETER).
„Die Installation einer Zertifizierungsstelle schlägt fehl mit Fehlercode ERROR_INVALID_PARAMETER“ weiterlesen

Die Rollenkonfiguration für den Registrierungsdienst für Netzwerkgeräte (NDES) schlägt fehl mit Fehlermeldung "Failed to Enroll RA certificates. The requested certificate template is not supported by this CA. 0x80094800 (-2146875392 CERTSRV_E_UNSUPPORTED_CERT_TYPE)"

Folgendes Szenario angenommen:

  • Man installiert einen Network Device Enrollment Service (NDES) Server
  • Man verfügt über die erforderlichen Berechtigungen zur Installation der Rolle (lokaler Administrator, Enterprise Administrator)
  • Die Rollenkonfiguration schlägt mit folgender Fehlermeldung fehl:
Failed to Enroll RA certificates. The requested certificate template is not supported by this CA. 0x80094800 (-2146875392 CERTSRV_E_UNSUPPORTED_CERT_TYPE)
„Die Rollenkonfiguration für den Registrierungsdienst für Netzwerkgeräte (NDES) schlägt fehl mit Fehlermeldung "Failed to Enroll RA certificates. The requested certificate template is not supported by this CA. 0x80094800 (-2146875392 CERTSRV_E_UNSUPPORTED_CERT_TYPE)"“ weiterlesen

Netzwerkprobleme mit Wireshark analysieren, ohne Software auf produktiven Systemen installieren zu müssen

Oftmals können Probleme mit der Public Key Infrastruktur im zugrundeliegenden Netzwerk gefunden werden – beispielsweise wenn eine Firewallregel im Netzwerk fehlt.

Somit ist es hilfreich, wenn man in der Lage ist, den Netzwerkdatenverkehr mitzuschneiden, um ihn zu analysieren. Hierfür existieren exzellente Werkzeuge wie Wireshark, jedoch erfordern diese, dass eine Installation auf dem betreffenden System vorgenommen wird, was auf einem produktiven System nicht ohne weiteres vorgenommen werden kann und sollte.

Glücklicherweise besitzt das Windows Server Betriebssystem einen integrierten Mechanismus, um Netzwerkpakete mitzuschneiden. Die daraus resultierenden Dateien sind jedoch nicht mit Wireshark kompatibel. Das Microsoft-eigene Werkzeug, Message Analyzer, wurde zum 25.11.2019 abgekündigt und die Download-Links entfernt.

Nachfolgend wird daher beschrieben, wie ein solcher Mitschnitt erzeugt und anschließend in ein Wireshark-kompatibles Format gebracht werden kann, um den Mitschnitt abseits des betreffenden Servers analysieren zu können.

„Netzwerkprobleme mit Wireshark analysieren, ohne Software auf produktiven Systemen installieren zu müssen“ weiterlesen

Der Anzeigename einer Zertifikatvorlage wird nicht aufgelöst. Es wird nur der Objektidentifizierer (OID) der Zertifikatvorlage angezeigt.

Folgendes Szenario angenommen:

  • Für eine Zertifikatvorlage wird nur der Objektidentifizierer (Object Identifier) angezeigt, jedoch nicht der Anzeigename und/oder
  • Abfragen gegen die Zertifizierungsstellen-Datenbank enthalten für die Zertifikatvorlage (Feld "CertificateTemplate") nur den Objektidentifizier, jedoch nicht den Anzeigenamen.
„Der Anzeigename einer Zertifikatvorlage wird nicht aufgelöst. Es wird nur der Objektidentifizierer (OID) der Zertifikatvorlage angezeigt.“ weiterlesen

Gibt es eine Abhängigkeit des Registrierungsdienstes für Netzwerkgeräte (NDES) mit dem NTAuthCertificates Objekt?

Der Registrierungsdienst für Netzwerkgeräte (NDES) verfügt über zwei Registration Authority Zertifikate. Mit dem Enrollment-Agenten-Zertifikat werden Zertifikatanforderungen signiert und man kann die NDES-Gerätevorlage entsprechend konfigurieren, sodass Zertifikate auch nur dann ausgestellt werden, wenn die eingereichten Zertifikatanforderungen auch eine entsprechende Signatur aufweisen.

Plant man, die mit dem NDES verbundene Zertifizierungsstelle aus dem NTAuthCertificates Objekt zu entfernen, kommt eventuell die Frage auf, ob hier wechselseitige Abhängigkeiten zu berücksichtigen sind – schließlich erfordert Enroll on Behalf Of (EOBO) das Vorhandensein des Zertifizierungsstellen-Zertifikats in NTAuthCertificates.

„Gibt es eine Abhängigkeit des Registrierungsdienstes für Netzwerkgeräte (NDES) mit dem NTAuthCertificates Objekt?“ weiterlesen

Die Installation einer Zertifizierungsstelle schlägt fehl mit Fehlercode "Bad Data. 0x80090005 (-2146893819 NTE_BAD_DATA)."

Folgendes Szenario angenommen:

  • Es wird versucht, eine Zertifizierungsstelle zu installieren
  • Die Rollenkonfiguration schlägt mit folgender Fehlermeldung fehl:
An error occurred when creating the new key container "ADCS Labor Issuing CA 3". Please make sure the CSP is installed correctly or select another CSP.
Bad Data. 0x80090005 (-2146893819 NTE_BAD_DATA).
„Die Installation einer Zertifizierungsstelle schlägt fehl mit Fehlercode "Bad Data. 0x80090005 (-2146893819 NTE_BAD_DATA)."“ weiterlesen

Die Sperrprüfung über den Onlineresponder (OCSP) schlägt fehl mit HTTP Fehlercode 404 (HTTP_E_STATUS_NOT_FOUND)

Folgendes Szenario angenommen:

„Die Sperrprüfung über den Onlineresponder (OCSP) schlägt fehl mit HTTP Fehlercode 404 (HTTP_E_STATUS_NOT_FOUND)“ weiterlesen

Die Installation einer ins Active Directory integrierten Zertifizierungsstelle mittels Windows PowerShell schlägt fehl mit Fehlermeldung "A value for the attribute was not in the acceptable range of values. 0x80072082 (WIN32: 8322 ERROR_DS_RANGE_CONSTRAINT)"

Folgendes Szenario angenommen:

  • Es wird eine ins Active Directory integrierte Zertifizierungsstelle (Enterprise CA) mittels Windows PowerShell installiert (Install-AdcsCertificationAuthority).
  • Die Rollenkonfiguration schlägt mit folgender Fehlermeldung fehl:
Install-AdcsCertificationAuthority : Active Directory Certificate Services setup failed with the following error: A value for the attribute was not in the acceptable range of values. 0x80072082 (WIN32: 8322 ERROR_DS_RANGE_CONSTRAINT)
„Die Installation einer ins Active Directory integrierten Zertifizierungsstelle mittels Windows PowerShell schlägt fehl mit Fehlermeldung "A value for the attribute was not in the acceptable range of values. 0x80072082 (WIN32: 8322 ERROR_DS_RANGE_CONSTRAINT)"“ weiterlesen

Übersicht über die für die PKI relevanten Active Directory Ereignisse

Nachfolgend eine Übersicht über die für die Public Key Infrastruktur relevanten auf Domänencontrollern erzeugten Ereignisse in der Windows-Ereignisanzeige.

„Übersicht über die für die PKI relevanten Active Directory Ereignisse“ weiterlesen
de_DEDeutsch