PFX maken met OpenSSL (macOS)
In deze instructie wordt uitgegaan van macOS. Op macOS is standaard het programma OpenSSL geïnstalleerd. Indien u een ander OS gebruikt waarop OpenSSL nog niet is geïnstalleerd dan kunt u dit downloaden op de website van OpenSSL. De te volgen stappen zijn daarna hetzelfde als hier beschreven.
Om een vervangend .pfx bestand te maken met behulp van OpenSSL dient u over de volgende items te beschikken:
- Het oude .pfx bestand met daarin de private key;
- Het wachtwoord behorend bij dit .pfx bestand;
- Het nieuwe (vervangende) certificaat (.pem bestand).
1. Haal de private key uit het oude .pfx bestand
Voer het volgende commando uit:
openssl pkcs12 -in [certificaat.pfx] -nocerts -out [server.key]
Toelichting: Vervang [certificaat.pfx] met de naam van uw oude .pfx bestand en [server.key] met de gewenste naam voor het private key bestand.
Het commando vraagt u eerst om het wachtwoord in te voeren om het .pfx bestand te openen. Dit wachtwoord heeft u gekozen tijdens het maken van de .pfx met OpenSSL.
Enter Import Password:
Vervolgens dient u (tweemaal) een pass phrase op te geven om het bestand met de private key te beveiligen. Kies hiervoor een sterke code die moeilijk te kraken is.
Enter PEM pass phrase: Verifying - Enter PEM pass phrase:
U heeft nu het bestand [server.key] aangemaakt met daarin de geheime sleutel van het certificaat.
2. Maak het nieuwe .pfx bestand met OpenSSL
Voor het maken van een .pfx bestand met OpenSSL heeft u twee mogelijkheden:
- kale export van certificaat met private key
Voer hiervoor het volgende commando uit:openssl pkcs12 -export -inkey [server.key] -in [servercertificaat.pem] -out [certificaat.pfx]
Toelichting: Vervang [server.key] met de naam van de private key uit stap 1, [servercertificaat.pem] met de naam van het vervangende .pem bestand (of het .cer bestand als u het certificaat heeft gedownload van de website) en [certificaat.pfx] met de gewenste naam voor het nieuwe .pfx bestand.
- export van het certificaat inclusief de volledige CA hiërarchie
Voer hiervoor het volgende commando uit:openssl pkcs12 -export -inkey [server.key] -in [servercertificaat.pem] -certfile [ca-bundle.pem] -out [certificaat.pfx]
Toelichting: Vervang [server.key] met de naam van de private key uit stap 1, [servercertificaat.pem] met de naam van het vervangende .pem bestand (of het .cer bestand als u het certificaat heeft gedownload van de website), [ca-bundle.pem] met de naam van het bestand met de bijbehorende hiërachie en [certificaat.pfx] met de gewenste naam voor het nieuwe .pfx bestand.
De volledige CA hiërarchie [ca-bundle.pem] kunt u hier vinden:
Voor private certificaten: Private root G1 bundel;
Voor publieke certificaten: EV root Server CA 2020 bundel.
Het commando vraagt u eerst de pass phrase in te voeren om het bestand [server.key] te openen. Dit is de pass phrase die u eerder heeft ingesteld in stap 1.
Enter pass phrase for [server.key]:
- Als de eerder bewaarde [server.key] past bij [servercertificaat.pem] dan wordt u gevraagd om tweemaal een Export Password te kiezen om de .pfx te beveiligen. Dit mag eventueel hetzelfde zijn als het wachtwoord van uw oude .pfx bestand.
Enter Export Password: Verifying - Enter Export Password:
Kies een sterk wachtwoord voor het .pfx bestand. Het is belangrijk om het wachtwoord van de .pfx goed te onthouden. Zonder dit wachtwoord kunt u geen gebruik maken van het .pfx bestand voor installatie op een ander systeem.
- Als de [server.key] en het [servercertificaat.pem] niet bij elkaar horen dan volgt de melding:
No certificate matches private key
Het .pfx bestand waaruit u de private key heeft gehaald in stap 1 komt dan niet overeen met het vervangende certificaat. Zoek het juiste .pfx bestand en begin opnieuw bij stap 1.
De bestandsnaam van het nieuwe bestand is [certificaat.pfx] en is zichtbaar als u opnieuw het commando ˋlsˊ uitvoert in de terminal.
Ruim als laatste de private key die u in stap 1 heeft aangemaakt weer op zodat deze niet in verkeerde handen kan vallen. Mocht u deze later weer nodig hebben dan kunt u deze opnieuw aanmaken volgens bovenstaande instructie.
rm [server.key]
Het nieuwe .pfx bestand kunt u nu met behulp van het gekozen wachtwoord importeren in de gewenste toepassing(en).