Ein .pfx-File ist ein spezielles Zertifikatsformat, das dem PKCS#12-Standard entspricht. Es enthält nicht nur das eigentliche Zertifikat, sondern auch das Intermediate-Zertifikat der ausstellenden Zertifizierungsstelle sowie den dazugehörigen privaten Schlüssel. Dieses Dateiformat fungiert als eine Art Komplettarchiv, das alle notwendigen Komponenten für den erfolgreichen Einsatz des Zertifikats bereitstellt. Diese Datei wird verwendet, um Zertifikate in Systemen zu importieren, die beide Elemente in einer Datei benötigen, wie zum Beispiel ein Webserver oder E-Mail-Systeme.
WebWide stellt absichtlich keine Möglichkeit bereit, den privaten Schlüssel über die Kundenverwaltung herunterzuladen. Der Grund dafür ist einfach: Um eine solche Funktion zu ermöglichen, müssten wir den privaten Schlüssel in unserem System speichern – und genau das wollen wir bewusst vermeiden. Stattdessen haben Sie die Möglichkeit, den privaten Schlüssel direkt bei der Erstellung der CSR-Anforderung zu generieren. Die Verantwortung für die sichere Aufbewahrung dieses Schlüssels liegt jedoch bei Ihnen, da er für die spätere Installation des Zertifikats erforderlich ist.
Wann ist eine .pfx-Datei erforderlich?
Eine .pfx-Datei wird insbesondere dann benötigt, wenn Sie ein Zertifikat auf einem Windows Server (z. B. im IIS-Manager) installieren möchten, aber bestimmte Voraussetzungen nicht gegeben sind. Typische Szenarien sind:
- Der CSR-Schlüssel wurde nicht direkt im IIS erstellt, aber das Zertifikat soll dort verwendet werden.
- Sie benötigen das Zertifikat für einen Windows Server, haben jedoch keinen Zugriff auf den IIS zur Erstellung der CSR-Anforderung.
- Der CSR-Schlüssel wurde über unsere Plattform SSLmarket generiert und Sie haben den privaten Schlüssel gespeichert – nun soll das Zertifikat auf einem Windows Server installiert werden.
.pfx-Datei mit OpenSSL erstellen
OpenSSL ist eine weit verbreitete Bibliothek, die auf nahezu allen Unix-basierten Betriebssystemen standardmäßig verfügbar ist. Wenn Sie mit einem Linux-Server arbeiten oder Anwendungen auf Linux-Basis nutzen, finden Sie OpenSSL in der Regel in den verfügbaren Systemprogrammen oder im Repository Ihrer Distribution.
Mit OpenSSL können Sie einen gespeicherten privaten Schlüssel in eine .pfx-Datei (PKCS#12-Format) umwandeln. Verwenden Sie dazu folgenden Befehl:
openssl pkcs12 -export -in linux_cert+ca.pem -inkey privatekey.key -out output.pfx
Nach der Eingabe eines Passworts zum Schutz der .pfx-Datei wird diese im aktuellen Verzeichnis unter dem angegebenen Namen (in diesem Fall output.pfx) erstellt. Sie können den Dateinamen natürlich nach Belieben anpassen.
.pfx-Datei mit PowerShell erstellen
PowerShell ist ein vielseitiges, plattformübergreifendes Tool zur Automatisierung und Konfigurationsverwaltung. Es kombiniert eine Befehlszeilenshell mit einer leistungsfähigen Skriptsprache und kann auf Windows, Linux und macOS ausgeführt werden.
Mit PowerShell und dem integrierten Werkzeug CERTUTIL können Sie eine .cer- bzw. .crt-Datei in wenigen Schritten in eine .pfx-Datei umwandeln:
- Den privaten Schlüssel vorbereiten: Speichern Sie Ihren Private Key als .key-Datei ab. Dazu öffnen Sie den Windows-Editor, fügen den Schlüssel ein und speichern die Datei mit der Endung .key.
Der Dateiname muss exakt mit dem der .crt- bzw. .cer-Datei übereinstimmen.
- Dateien im selben Verzeichnis ablegen: Legen Sie die .key- und die .crt/.cer-Datei in einem gemeinsamen Verzeichnis ab, z. B.
C:\Temp\Cert
. - PowerShell öffnen und zum Verzeichnis navigieren: Starten Sie PowerShell und wechseln Sie in das Verzeichnis, in dem die Dateien gespeichert sind. Verwenden Sie dazu den folgenden Befehl:
cd C:\Temp\Cert
Falls sich die Dateien in einem anderen Ordner befinden, passen Sie den Pfad entsprechend an. - .pfx-Datei mit CERTUTIL erstellen: Führen Sie folgenden Befehl aus, um aus den beiden Dateien eine .pfx-Datei zu generieren:
certutil -MergePFX beispielCRT.crt beispielPFX.pfx
Ersetzen SiebeispielCRT.crt
durch den Namen Ihrer Zertifikatsdatei. Den gewünschten Namen für die .pfx-Datei geben Sie anstelle vonbeispielPFX.pfx
ein. - Passwort für die .pfx-Datei festlegen: Beim Ausführen des Befehls werden Sie aufgefordert, ein Kennwort für die .pfx-Datei zu setzen.
Dieses Passwort wird später beim Import des Zertifikats benötigt – speichern Sie es also sicher ab!
- .pfx-Datei erfolgreich erstellt: Nach der Bestätigung wird die neu generierte .pfx-Datei im selben Verzeichnis abgelegt, in dem sich auch die ursprünglichen Dateien befinden.
.pfx-Datei auf einem Windows Server mit IIS erstellen
.pfx aus einem bestehenden Zertifikat exportieren
Wenn Sie ein bereits installiertes Zertifikat auf Ihrem Windows Server in eine .pfx-Datei umwandeln möchten, können Sie dies über die MMC (Microsoft Management Console) tun. Diese Methode eignet sich besonders dann, wenn das Zertifikat bereits im Zertifikatsspeicher des Servers abgelegt ist – beispielsweise, wenn es über den IIS (Internet Information Services) Webserver verwaltet wird.
So exportieren Sie eine .pfx-Datei mit IIS
Der IIS-Webserver speichert Zertifikate direkt im Zertifikatsspeicher des Servers. Beim Erstellen einer CSR-Anforderung in IIS werden sowohl der private Schlüssel als auch der CSR-Code generiert. Nach der Ausstellung des Zertifikats wird dieses wieder in IIS importiert. Wenn Sie das Zertifikat als .pfx-Datei exportieren möchten, gehen Sie wie folgt vor:
- Öffnen Sie den IIS-Manager auf Ihrem Windows Server.
- Navigieren Sie zu Serverzertifikate und suchen Sie das gewünschte Zertifikat.
- Klicken Sie mit der rechten Maustaste auf das Zertifikat und wählen Sie Exportieren.
- Legen Sie ein sicheres Passwort fest, das die .pfx-Datei schützt.
- Speichern Sie die Datei an einem gewünschten Speicherort auf Ihrem Server oder Datenträger.
- Nach Abschluss dieses Vorgangs liegt Ihnen eine .pfx-Datei vor, die den privaten Schlüssel und das Zertifikat enthält.
Import eines neuen Zertifikats und Erstellung einer .pfx-Datei
Der Zertifikatsspeicher von Windows erlaubt es nicht, einen privaten Schlüssel direkt aus einer Datei zu importieren. Das bedeutet, dass Sie in der MMC-Konsole keine separate Schlüsseldatei mit einem Zertifikat verbinden können – ein Vorgang, der mit OpenSSL problemlos möglich wäre. Für den IIS-Webserver gilt daher: Es kann ausschließlich eine .pfx-Datei importiert werden, die sowohl das Zertifikat als auch den privaten Schlüssel enthält.
Falls Sie ein neues Zertifikat auf einem Windows Server importieren müssen, jedoch kein privater Schlüssel auf dem Server existiert (weil beispielsweise die CSR-Anfrage nicht auf diesem Server erstellt wurde), haben Sie zwei Optionen:
- Erstellen Sie eine .pfx-Datei an einem anderen Ort
- Nutzen Sie OpenSSL oder eine andere geeignete Methode, um eine .pfx-Datei zu generieren.
- Anschließend können Sie die Datei problemlos in den Windows-Zertifikatsspeicher oder IIS importieren.
- Erstellen Sie eine neue CSR-Anforderung und führen Sie eine Neuausstellung (Reissue) durch
- Generieren Sie eine neue CSR-Anfrage (Certificate Signing Request) direkt auf dem Server.
- Fordern Sie eine Reissue (Neuausstellung) des Zertifikats an.
- Nach der Neuausstellung können Sie das Zertifikat mit dem neu generierten privaten Schlüssel auf dem IIS-Webserver importieren.
.pfx-Datei mit einer Drittanbieter-Anwendung erstellen
Open-Source-Lösung: XCA
Wenn Sie eine .pfx-Datei erstellen möchten, ohne sich mit der Kommandozeile von OpenSSL auseinandersetzen zu müssen, gibt es eine benutzerfreundliche Alternative: die Open-Source-Anwendung XCA. Das Programm bietet eine grafische Oberfläche, mit der Sie Zertifikate und Schlüssel komfortabel verwalten können. Das Programm erleichtert die Arbeit erheblich, da es private Schlüssel automatisch den passenden Zertifikaten zuordnet – Sie müssen also nicht manuell überprüfen, welche Schlüssel zu welchen Zertifikaten gehören.
.pfx-Datei mit dem Zertifikats-Konverter von Eunetic erstellen
Falls Sie keine Open-Source-Anwendung wie XCA nutzen möchten, gibt es auch eine einfache Online-Alternative: den Zertifikats-Konverter von Eunetic. Dieses Web-Tool ermöglicht es Ihnen, Zertifikatsdateien in das gewünschte Format zu konvertieren – darunter auch das PFX/PKCS#12-Format. Hierzu wählen Sie zunächst das Quell- und das Zielformat aus und anschließend laden Sie die Zertifikatsdateien auf den Server hoch, die Sie zuvor von Ihrer Zertifizierungsstelle erhalten haben. Als Zielformat müssen Sie dann die Option "PFX/PKCS#12" auswählen. Klicken Sie nun auf "Absenden" und nach Abschluss der serverseitigen Konvertierung erhalten Sie automatisch die .pfx-Datei als Download.
Ihre Zertifikatsdateien werden stets über eine verschlüsselte Verbindung übermittelt und nach der Konvertierung umgehend vom Server gelöscht.
Sicherheit der .pfx-Datei
Da eine .pfx-Datei den privaten Schlüssel enthält, muss sie immer mit einem sicheren und starken Passwort geschützt werden. Die Wahl des Passworts ist entscheidend, um das Zertifikat vor unbefugtem Zugriff zu schützen.
Ein schwaches oder leicht zu erratendes Passwort macht das Zertifikat anfällig für Missbrauch. Stellen Sie sich vor, ein Angreifer hätte Zugriff auf die gestohlene .pfx-Datei und das Passwort wäre etwas Einfaches wie „12345“ – dann könnte er das Zertifikat sofort missbrauchen.
Wählen Sie ein komplexes und einzigartiges Passwort, um Ihre .pfx-Datei bestmöglich abzusichern und das Risiko von Angriffen zu minimieren. Wie Sie ein sicheres und starkes Passwort erstellen, können Sie in unserem FAQ-Artikel "Welche Tipps sollte ich bei der Erstellung eines sicheren Passworts beachten?" erfahren.
FAQ - Häufig gestellte Fragen
Kann ich eine .pfx-Datei auch ohne den privaten Schlüssel erstellen?
Nein, eine .pfx-Datei erfordert den privaten Schlüssel, um korrekt erstellt zu werden. Wenn Sie keinen privaten Schlüssel haben, müssen Sie diesen während der Erstellung der CSR-Anforderung generieren oder eine Neuausstellung des Zertifikats vornehmen.
Wie kann ich überprüfen, ob die .pfx-Datei korrekt erstellt wurde?
Nach der Erstellung einer .pfx-Datei können Sie diese mit Tools wie OpenSSL oder direkt im Zertifikatsspeicher des Servers importieren und prüfen, ob sowohl das Zertifikat als auch der private Schlüssel korrekt zusammengefügt wurden.
Was passiert, wenn ich das Passwort für die .pfx-Datei verliere?
Wenn Sie das Passwort für die .pfx-Datei verlieren, können Sie die Datei nicht mehr importieren oder verwenden. In diesem Fall müssen Sie eine neue .pfx-Datei erstellen und sicherstellen, dass das neue Passwort gut dokumentiert wird. Sollte Ihnen der PrivateKey nicht mehr vorliegen, können Sie eine kostenlose Neuausstellung des Zertifikats mit einem neuen CSR durchführen. Bei der Generierung des neuen CSRs erhalten Sie gleichzeitig einen neuen PrivateKey.
Kann ich mehrere Zertifikate in einer einzigen .pfx-Datei speichern?
Ja, es ist möglich, mehrere Zertifikate, einschließlich eines Serverzertifikats und von Zwischenzertifikaten, in einer einzigen .pfx-Datei zu speichern. Achten Sie darauf, dass alle relevanten Zertifikate und der private Schlüssel korrekt hinzugefügt werden, um eine fehlerfreie Implementierung zu gewährleisten.
Was mache ich, wenn ich eine .pfx-Datei für ein bestehendes Zertifikat brauche, aber keinen privaten Schlüssel mehr habe?
In diesem Fall müssen Sie entweder eine Neuausstellung (Reissue) des Zertifikats vornehmen oder den privaten Schlüssel auf einem anderen System oder in einer anderen Form wiederherstellen, falls er noch verfügbar ist.
Kann ich eine .pfx-Datei auf mehreren Servern gleichzeitig verwenden?
Ja, eine .pfx-Datei kann auf mehreren Servern verwendet werden, solange Sie beim Import das richtige Passwort kennen und es keinen Sicherheitsbedenken gibt. Achten Sie darauf, dass der private Schlüssel nicht in unbefugte Hände gerät.
Ist es möglich, das Passwort für eine .pfx-Datei nachträglich zu ändern?
Ja, Sie können das Passwort einer .pfx-Datei mit Tools wie OpenSSL oder PowerShell ändern, indem Sie die Datei erneut exportieren und dabei ein neues Passwort angeben.
Wie kann ich sicherstellen, dass meine .pfx-Datei nicht durch Dritte abgefangen wird?
Übertragen Sie die .pfx-Datei immer über eine sichere Verbindung (z. B. SFTP, HTTPS oder verschlüsselte E-Mails). Bewahren Sie die Datei an einem sicheren Ort auf und stellen Sie sicher, dass nur autorisierte Personen Zugriff auf die Datei haben.
Was kann ich tun, wenn ich die .pfx-Datei auf einem anderen Server installieren muss und das Passwort nicht weiß?
Ohne das Passwort können Sie die .pfx-Datei nicht importieren. In diesem Fall müssen Sie entweder das Passwort wiederherstellen (falls möglich) oder ein neues Zertifikat anfordern und die .pfx-Datei erneut erstellen.