Dieser Beitrag erschien zuerst bei blog.michael-wessel.de
Versucht man, auf einer Windows-Enterprise-CA einen Zertifikatsrequest aus einer Datei zu bearbeiten, so kann der folgende Fehler auftreten:
Die Anforderung enthält keine Zertifikatvorlageninformationen. 0x80094801 (-2146875391 CERTSRV_E_NO_CERT_TYPE)
Verweigert vom Richtlinienmodul 0x80094801, Die Anforderung enthält weder die Erweiterung für die Zertifikatvorlage noch das Anforderungsattribut „CertificateTemplate“.
Die Ursache dafür: Im Request ist keine Zertifikatsvorlage angegeben. Das geht bei einem manuellen Request auch nur mit Umständen, daher kann man sich anders behelfen.
Zur Vorbereitung muss man hier eine passende Zertifikatsvorlage erzeugen. Die Standard-Templates sollen direkt von den Computern angefragt werden, daher ist dort hinterlegt, dass der Computername aus dem AD geholt wird. Das ist bei einer manuellen Anfrage nicht möglich, daher brauchen wir eine separate Zertifikatsvorlage.
ACHTUNG: Diese Vorlage erfordert, dass die Identität des Computers „manuell“ geprüft und bestätigt wird. Eine solche Vorlage darf also nie auf „Enroll“ für irgendein Computerkonto stehen (und natürlich erst recht nicht auf „Autoenroll“).
Zertifikatsvorlage für manuelle Ausstellung erzeugen
- Passende Basis-Vorlage (z.B. „Computer“) duplizieren.
- Den Namen der Vorlage anpassen, ggf. auch die Gültigkeitsdauer
- Unter „Antragstellername“ die erste Option auswählen (Warnung bestätigen)
- Lässt man diesen Schritt aus, so erscheint später diese Fehlermeldung beim Versuch, eine Anforderung zu bearbeiten:
Der DNS-Name ist nicht verfügbar und kann dem Subjektalternativnamen nicht hinzugefügt werden. 0x8009480f (-2146875377 CERTSRV_E_SUBJECT_DNS_REQUIRED)
Verweigert vom Richtlinienmodul
- Unter „Sicherheit“ das Recht „Registrieren“ von allen Computergruppen entfernen; es sollte nur für bestimmte Administratorgruppen gelten! Für „Authentifiztierte Benutzer“ am besten auch das Leserecht entfernen, damit die Vorlage gar nicht erst angezeigt wird.
- Vorlage speichern. Auf der CA die Vorlage publizieren (ggf. vorher AD-Replikation abwarten, kann etwas dauern)
- Damit ist die Vorbereitung auf der CA abgeschlossen.
Auf dem Zielrechner einen Zertifikats-Request erzeugen
- MMC „Zertifikate“ für den lokalen Computer
- Rechtsklick, Alle Aufgaben, Erweiterte Vorgänge, Benutzerdefiniert …
- Vorgang ohne Registrierungsrichtlinie
- Im nächsten Schritt nichts ändern, dann Details öffnen und auf Eigenschaften klicken
- Passenden Anzeigenamen für das Zertifikat wählen (z.B. <Computername>-Manuell-Computer). Unter Antragsteller für „Vollständiger DN“ den LDAP-Namen des Computer-Accounts angeben, z.B.
cn=PC4711,cn=computer,DC=domain,DC=tld
- Unter „Erweiterungen“:
- Unter „Privater Schlüssel“:
Schlüsseloptionen/Schlüsselgröße passend wählen (hier 2048 Bit aus Kompatibilitätsgründen – wenn möglich, sollte es mehr sein)
- OK, dann Request in eine Datei speichern
- Den Request auf den CA-Server kopieren
- Auf der CA: Zertifikatsanforderung bearbeiten
- Ein manueller Request kann über das GUI auf einer Enterprise-CA nicht vollständig bearbeitet werden, weil der Name der Vorlage fehlt. Das geht über die Kommandozeile.
- CMD als Administrator starten. Eingabe:
certreq -submit -attrib „certificateTemplate:<Name des Templates>“ c:\Pfad\<Request-Datei>.req
ACHTUNG: Der Name ist der „technische“ Name, nicht der Anzeigename – die können unterschiedlich sein, sind es aber meist nicht. - Auf Rückfrage die richtige CA auswählen.
- Nun sollte der Request bearbeitet und automatisch genehmigt werden. Es erscheint ein Fenster zum Speichern, hier mit passendem Namen an geeignetem Ort speichern.
- Die Zertifikatsdatei auf den Client kopieren.
- Falls die CA folgenden Fehler meldet:
Die angeforderte Zertifikatsvorlage wird von dieser Zertifizierungsstelle (CA) nicht unterstützt. 0x80094800 (-2146875392 CERTSRV_E_UNSUPPORTED_CERT_TYPE)
- Dann ist die Zertifikatsvorlage entweder nicht vorhanden (Name falsch angegeben oder im AD noch nicht repliziert)
- Oder die Zertifikatsvorlage ist von einer unpassenden Vorlage kopiert worden. In dem Fall eine andere Vorlage als Basis nehmen, z.B. die vordefinierte „Computer“-Vorlage.
Zertifikat auf dem Zielrechner einrichten
- MMC Zertifikate für lokalen Computer
- Rechtsklick, Zertifikat importieren
- Datei auswählen, das Zertifikat sollte importiert werden
- Kontrolle: Zertifikat per Doppelklick öffnen, es sollte melden, dass der private Schlüssel vorhanden ist
http://faq-o-matic.net/?p=7960