Praxistipp #01 - Zertifikatsschlüssel zu PFX-Datei zusammenbauen

Lesedauer 2 Minuten

Problem: ein Zertifikat wird mit getrennten Dateien für den öffentlichen Schlüssel (CER, CRT) und den privaten Schlüssel (KEY) geliefert. Es wird jedoch eine kombinierte Datei (PFX) benötigt.

Aufgabe: Die getrennten Dateien zu einer PFX-Datei kombinieren

Variante 1: Verwendung einer webbasierten Lösung

Anbieter wie SSLShopper bieten verschiedene Lösungen für die Behandlung von Zertifikaten an, beispielsweise einen SSL-Konverter. Hiermit können die getrennten Dateien bequem zu einer PFX-Datei zusammengebaut werden. Allerdings wird hierbei der private Schlüssel an den Anbieter übermittelt, was ein Sicherheitsrisiko darstellt (auch, wenn die Übermittlung verschlüsselt erfolgt). Diese Variante eignet sich also nur für unkritische Zertifikate, beispielsweise für Testsysteme ohne Bezug zum Unternehmen.

Die folgenden Schritte zeigen dies einmal exemplarisch anhand von SSLShopper:

  • Webseite aufrufen: SSL Converter - Convert SSL Certificates to different formats
  • Bei "Certificate File to Convert" die Datei mit dem öffentlichen Schlüssel auswählen (CER, CRT)
  • Im Auswahlmenü "Type To Convert To" die Option "PFX/PKCS#12" auswählen
  • Bei "Private Key File" die Datei mit dem privaten Schlüssel auswählen (KEY)
  • Im Feld "PFX Password" ein Kennwort für den Zugriff auf die PFX-Datei eingeben
  • "Convert Certificate"

Passen die Daten, wird eine PFX-Datei erzeugt und auf den lokalen Rechner heruntergeladen.

Variante 2: Verwendung einer kommandozeilenbasierten Lösung (Windows)

Windows stellt ein Kommandozeilen-Werkzeug namens certutil bereit. Dieses Werkzeug ist eigentlich für die Steuerung einer Windows-basierten Zertifizierungsstelle gedacht, ist jedoch in jedem Windows-Betriebssystem vorhanden. Dementsprechend kann es nicht nur auf Servern, sondern auf auf Endgeräten verwendet werden.

Hiermit lassen sich unter anderem getrennte Schlüssel zu einer kombinierten PFX-Datei zusammenfügen. Die Zertifikatsdateien müssen gleichartig benannt werden (also beispielsweise mycert.crt und mycert.key), da das Werkzeug einen gleichen Dateinamen für die Dateien voraussetzt. Die Zusammenführung kann dann mittels des folgenden Befehls durchgeführt werden - es muss dann auch ein Kennwort vergeben werden. Die Eingabe des Kennworts ist aus Sicherheitsgründen nicht sichtbar:

:: In Verzeichnis mit Zertifikatsdateien wechseln, z.B. cd %USERPROFILE%\Downloads
cd "<Pfad>\<zu den Dateien>"

:: Dateien zusammenführen, z.B. certutil -mergepfx mycert.crt mycert.pfx
certutil -mergepfx <Dateiname>.crt <Ziel-Dateiname>.pfx
BAT (Batchfile)

Die neue Datei wird dann im gleichen Ordner erzeugt.

Variante 3: Verwendung einer kommandozeilenbasierten Lösung (Windows oder Linux)

Steht ein Linux-System für die Konfiguration zur Verfügung, so kann OpenSSL verwendet werden. Diese Lösung kann auch unter Windows zum Einsatz kommen, falls certutil aus irgendwelchen Gründen nicht funktionieren sollte. Unter Windows muss OpenSSL jedoch zunächst separat heruntergeladen und installiert werden. Unabhängig davon werden die folgenden Befehle für die Erstellung verwendet. Es muss ein Kennwort vergeben werden, welches aus Sicherheitsgründen nicht eingeblendet wird:

openssl pkcs12 -export -out <Zieldatei>.pfx -inkey <Privater Schlüssel>.key -in <Öffentlicher Schlüssel>.crt
BAT (Batchfile)

Ggf. muss vor Ausführung in den Ordner gewechselt werden, in dem sich die Dateien befinden.



Gefällt Dir der Beitrag? Lass es andere wissen!