Funktionstest durchführen für den Registrierungsdienst für Netzwerkgeräte (NDES)

Nach der Installation eines Registrierungsdienst für Netzwerkgeräte (Network Device Enrollment Service, NDES), oder nach umfangreicheren Wartungsarbeiten sollte ein ausgiebiger Funktionstest erfolgen, um sicherzustellen, dass alle Komponenten wie gewünscht arbeiten.

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)".

Durchführung des Funktionstests

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.

Zu einem Funktionstest des Registrierungsdienst für Netzwerkgeräte (NDES) gehören die folgenden Schritte:

  • Start des Registrierungsdienst für Netzwerkgeräte-Dienstes sicherstellen
  • Überprüfen der Ereignisanzeige des Registrierungsdienst für Netzwerkgeräte.
  • Aufruf der Beantragung-Seite des Registrierungsdienst für Netzwerkgeräte
  • Aufruf der Administrations-Seite des Registrierungsdienst für Netzwerkgeräte.
  • Ein Zertifikat über NDES beantragen.

Details: Start des Registrierungsdienst für Netzwerkgeräte-Dienstes sicherstellen

Da der Registrierungsdienst für Netzwerkgeräte als Modul innerhalb des Internet Information Server (IIS) Dienstes realisiert ist, kann man den Dienststart nicht über die Verwaltungskontole für Dienste (services.msc) kontrollieren. Stattdessen wird ein entsprechendes Ereignis mir Nr. 1 in der Ereignisanzeige protokolliert.

Dieses wird jedoch erst beim ersten Aufruf durch einen Antragsteller erzeugt, sodass hierzu zunächst der weiter unten beschriebene Schritt "Aufruf der Beantragung-Seite des Registrierungsdienst für Netzwerkgeräte" ausgeführt werden muss. Alternativ kann der Aufruf auch mit folgendem Windows PowerShell Befehl durchgeführt werden:

[void](Invoke-WebRequest -Uri "http://localhost/certsrv/mscep/mscep.dll/pkiclient.exe?operation=GetCACaps")

Details: Überprüfen der Ereignisanzeige des Registrierungsdienst für Netzwerkgeräte

Zunächst sollte die Windows-Ereignisanzeige auf dem Registrierungsdienst für Netzwerkgeräte-Server nach allen relevanten Ereignissen untersucht werden, die auf einen Fehler hinweisen könnten. Hierzu gibt es in der Ereignisanzeige eine vorgefertigte Ansicht unter "Custom Views" – "Server Roles" – "Active Directory Certificate Services", welche bereits die benötigten Filter auf die Ereignisanzeige definiert hat.

Siehe hierzu auch Artikel "Übersicht über die vom Registrierungsdienst für Netzwerkgeräte (NDES) generierten Windows-Ereignisse".

Falls es bei diesem Schritt zu Problemen kommt, können folgende Artikel unter Umständen hilfreich sein:

Details: Aufruf der Beantragungs-Seite des Registrierungsdienst für Netzwerkgeräte

Durch Aufruf der Beantragungs-Seite (mscep) kann überprüft werden, ob der Dienst generell startet und einsatzbereit ist. Der Aufruf erfolgt über folgende Adresse:

https://{Servername-oder-Alias}/certsrv/mscep

Details: Aufruf der Administrations-Seite des Registrierungsdienst für Netzwerkgeräte

Durch Aufruf der Administrations-Seite (mscep) kann überprüft werden, ob die Anmeldung des Benutzers klappt und dieser ein One-Time Passwort erhält. Zur Anmeldung muss ein Konto verwendet werden, welches "Enroll"-Berechtigungen auf der konfuigurierten Zertifikatvorlage hat. Der Aufruf erfolgt über folgende Adresse:

https://{Servername-oder-Alias}/certsrv/mscep_admin

Falls es bei diesem Schritt zu Problemen kommt, können folgende Artikel unter Umständen hilfreich sein:

Details: Ein Zertifikat über NDES beantragen

Die Beantragung von Zertifikaten über den Registrierungsdienst ist mit dem PSCertificateEnrollment PowerShell Modul auch über die Windows PowerShell möglich. Siehe hierzu Artikel "Zertifikatbeantragung für Windows-Systeme über den Registrierungsdienst für Netzwerkgeräte (NDES) mit Windows PowerShell".

Windows 10 beinhaltet einen Client für die Beantragung von Zertifikaten über das SCEP-Protokoll, jedoch nur auf Kommandozeilen-Ebene. Zur Beantragung eines Zertifikats über NDES kann folgendes Script verwendet werden:

Die Beantragung über die Kommandozeile unterstüzt kein Secure Sockets Layer (SSL). Entsprechend muss der NDES Server konfiguriert sein, Verbindungen über HTTP anzunehmen. Die Anmeldedaten können über das Netzwerk mitgelesen werden, da die Verbindung nicht verschlüsselt ist.

Auf GitHub gibt es einen PowerShell- und C# Code für die Beantragung eines Zertifikats via NDES, welcher auch SSL unterstützt: Sleepw4lker / NDESTest

@echo off
set SERVER= :: hier Servername oder Alias eintragen
set DOMAIN= :: hier Domainname eintragen
set USER= :: hier Benutzername eintragen
set PASSWORD= :: hier Kennwort eintragen

set INFFILE=ndes_request.inf
set REQFILE=ndes_request.req
set CRTFILE=ndes_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 Getting OTP from %SERVER% and building request
certreq -v -config %SERVER% -username %DOMAIN%\%USER% -p %PASSWORD% -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

Das Script führt die erforderlichen Schritte aus:

  1. Authentifizieren gegenüber der NDES Administrations-Seite (mscep_admin) und abholen eines One-Time-Passworts (OTP).
  2. Erstellen eines Schlüsselpaars und einer Zertifikatanforderung.
  3. Senden der Zertifikatanforderung an die Zertifizierungsstelle über NDES, unter Verwendung des zuvor beantragten OTP.
  4. Abholen und installieren des ausgestellten Zertifikats.

Weiterführende Links:

Externe Quellen

de_DEDeutsch