Konvertierung von .crt und .key zu .pfx

SSL bei Wildcard Zertifikaten in der Azure Front Door
Als Einstieg in unsere Cloudinfrastruktur nutzen wir bei Regionalfussball die Azure Front Door. Diese ist ein globales CDN inkl. DDoS Schutz, WAF und Load-Balancing.
Leider können für Wildcard-Domains (bspw: *.marcellueder.dev) keine Front Door gemanagten SSL-Zertifikate genutzt werden, weshalb wir eigene Zertifikate über den Azure Key Vault bereitstellen müssen und selbst für die jährliche Rotation verantwortlich sind. Von unserem Dienstleister erhalten wir das Zertifikat als .crt und .key Files, im Key Vault müssen diese als .pfx / .pem importiert werden.
Da ich mich gerade in dem jährlichen Prozess befunden habe dies anzupassen, fand ich es einen kurzen Blogpost wert - vielleicht kann ja jemand von dieser Zusammenfassung profitieren (oder ich selbst in einem Jahr ;)). Im Folgenden gehe ich auf die unterschiedlichen Endungen und Formate von Zertifikaten ein und stelle vor, wie man diese in .pfx konvertieren kann. Weiterführende Artikel finden sich in den Quellen.
Endungen und Formate von Zertifikaten
Zertifikate haben meist die Endungen .crt, .pem oder .cer. Die Endungen geben kein konkretes Format des Inhalts vor. Der Inhalt kann entweder im PEM- oder DER-Format vorliegen. DER ist binär codiert, PEM ist an der Base64 Codierung zu erkennen und startet bspw. mit:
-----BEGIN CERTIFICATE-----
MIIH/TCCBeWgAwIBAgIQaBYE3/M08XHYCnNVmcFBcjANBgkqhkiG9w0BAQsFADBy
...
.pfx / PKCS #12
PKCS #12 bzw. .pfx ist ein kryptografischer Container um den privaten Schlüssel, das Zertifikat und ggf. die Zwischenzertifikate in einer Datei passwortgeschützt zu bündeln. Es findet vorrangig im Microsoft Umfeld seinen Einsatz, so auch im Azure Key Vault.
Konvertierung von .crt und .key zu .pfx
Nachdem nun die Unterschiede und Nicht-Unterschiede zwischen den Endungen und Formaten klar sind, kann man mit openssl und einem Einzeiler die gewünschte PFX-Datei erzeugen. Nach Absetzen des folgenden Befehls wird nach einem Passwort zur Verschlüsselung der .pfx Datei gefragt. Anschließend wird die Datei erstellt und kann erfolgreich im Key Vault importiert werden.
openssl pkcs12 -in certificate.crt -inkey privtate_key.key -export -out certificate.pfx