Privates Schlüsselpaar (.pfx) mit Root-CA-Zertifikat (.cer) der Kette (Chain) zusammenfügen

VonJochen Reinecke

Privates Schlüsselpaar (.pfx) mit Root-CA-Zertifikat (.cer) der Kette (Chain) zusammenfügen

Immer wieder finden sich Situationen, in denen Active Directory Zertifikate auf Unix-Systeme, Apache-Webserver, VoIP-Telefone oder ähnliches installiert werden müssen. Zu diesem Zweck ist es, anders als bei Windows Systemen, häufig erforderlich, dass die Zertifikatskette (Chain) vollständig innerhalb einer Zertifikatsdatei abgelegt wird, da das Stammzertifikat (Root-CA) nicht zusätzlich importiert werden kann. Mit Windows-Bordmitteln ein schwieriges Unterfangen. Abhilfe schaffts abermals OPENSSL (für Windows).

 

Erzeugen einer Zertifikatsvorlage für die Anforderung abweichender Antragstellernamen

In der Regel werden die Zielzertifikate für Unix-basierte Systeme oder Webserver erforderlich. Diese lassen sich nicht Windows-typisch in die Active Directory Struktur integrieren und profitieren daher auch selten von den Mechanismen der automatischen Zertifikatsregistrierung (z.B. per Gruppenrichtlinie). Aus diesem Grund können Computerzertifikate wie folgt “händisch” unter anderem Namen registriert werden:

  1. Öffnen des MMC-SnapIn “Zertifizierungsstelle” > “Name der CA”
  2. Rechtsklick auf “Zertifikatsvorlagen” > “Verwalten”
  3. Rechtsklick auf die Standard-Vorlage “Computer” > “Vorlage duplizieren”
  4. Auf der Registerkarte “Antragstellername” den Radio-Button “Informationen werden in der Anforderung angegeben” auswählen
  5. Überprüfen der Sicherheitsberechtigung für “Authentifizierte Benutzer” > “Lesen und Registrieren”
  6. Über “Allgemein” das “Zertifikat in Active Directory veröffentlichen” und den Namen anpassen
  7. Die Vorlagenkonsole schließen und über einen Rechtsklick auf “Zertifikatsvorlagen” > “Neu” > “Auszustellende Zertifikatsvorlage” auswählen
  8. Die erstellte Vorlage wählen und mit “Ok” bestätigen

 

Ausstellen des Quellzertifikats über Active Directory Zertifikatsdienste

Anschließend kann ein neues Zertifikat von jedem Windows-Computer, jedoch nur mit administrativer Berechtigung, unter Angabe eines Antragstellernamens erzeugt werden. Dazu gilt:

  1. Öffnen des MMC-SnapIn “Zertifikate” > “Computerkonto” > “Dieser Computer”
  2. Rechtsklick auf “Eigene Zertifikate” > “Alle Aufgaben” > “Neues Zertifikat anfordern”
  3. Dem Assistenten bis zur Auswahl einer Vorlage folgen und die oben erstellte Vorlage unter “Es werden zusätzliche Informationen für die Zertifikatsregistrierung benötigt” auswählen
  4. Unter “Antragstellername” > “Typ: Allgemeiner Name” den Wert des künftigen Geräts (z.B. VoIP-Telefon) als FQDN angeben
  5. Unter “Alternativer Name” > “Typ: DNS” den Wert des künftigen Geräts (z.B. VoIP-Telefon) als FQDN angeben
  6. Auf der Registerkarte “Privater Schlüssel” > “Schlüsseloptionen” > den “privaten Schlüssel exportierbar machen”
  7. Mit “Ok” schließen und die Zertifikatsanforderung abschließen

 

Export des privaten und öffentlichen Schlüsselpaares (.pfx-File)

Das Zertifikat sollte nun unterhalb der “Eigenen Zertifikate” sichtbar sein. Anschließend kann es exportiert werden:

  1. Rechtsklick auf das frisch ausgestellte Zertifikat > “Alle Aufgaben” > “Exportieren”
  2. Im Assistenten “Ja, privaten Schlüssel exportieren” wählen
  3. Zielverzeichnis und Kennwort festlegen und den Assistenten abschließen

 

.pfx-Schlüsselpaar mittels OPENSSL in .key (privater Schlüssel) und .pem (öffentlicher Schlüssel) aufteilen

Im letzten Schritt ist über “OPENSSL für Windows” folgender Ablauf erforderlich um aus dem. pfx-Schlüsselpaar den .key privaten Schlüssel sowie den .pem öffentlichen Schlüssel zu separieren. Die Software OPENSSL findet sich über den entsprechenden Suchbegriff als Download in einer Suchmaschine eurer Wahl.

Aus der .pfx-Datei den .key privaten Schlüssel extrahieren:

openssl pkcs12 -in AltesZertifikat.pfx -out NeuerPrivateKey.key -nocerts

Aus der .pfx-Datei den .pem öffentlichen Schlüssel extrahieren:

openssl pkcs12 -in AltesZertifikat.pfx -out NeuerPublicKey.pem -nokeys

Schlussendlich wird das .pem-Zertifikat der Stammzertifizierungsstelle (Root-CA) benötigt. Dieses lässt sich aus dem Windows .cer-Zertifikat durch Umbennen der Dateiendung in .pem erzeugen. Anschließend können alle Stücke über das folgende OPENSSEL Statement zu einem neuen .pfx-File zusammengefügt werden:

openssl pkcs12 -export -out NeuesZertifikat.pfx -inkey NeuerPrivateKey.key -in NeuerPublicKey.pem -certfile RootCA.pem

 

Das ausgestellte Zertifikat kann nun auf dem Zielsystem installiert werden. Es enthält nun die Zertifikatskette in selbiger Zertifikatsdatei.

Über den Autor

Jochen Reinecke administrator

Jochen Reinecke (26 Jahre), beschäftigt sich als leidenschaftlicher Systemingenieur für Netzwerkarchitektur seit über 10 Jahren mit Themen rund um Netzwerke, Firewalling, IT-Sicherheit, Compute, Storage, WiFi und Voice. Neben seinem beruflichen Abschluss als "Staatl. gepr. Techniker Fachrichtung Informatik" ist er unter anderem "Cisco Certified Network Associate (CCNA)" und "Microsoft Certified Solutions Expert (MCSE)" für "Cloud Platform and Infrastructure" sowie "Producitivity". Seit einigen Jahren engagiert er sich darüber hinaus für bitblick.de und veröffentlicht Beiträge für die Microsoft TechNet und andere Online-Plattformen. Die (knappe) Freizeit verbringt er mit der Familie, bei „zu wenig" Sport und dem nebenberuflichem Studium der Diplom-Wirtschaftsinformatik.

Schreibe eine Antwort

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.