PFX maken met OpenSSL (macOS)

Als u een Certificate Signing Request (CSR) heeft aangemaakt met OpenSSL en u wilt het certificaat op een andere systeem (bijv. een Windows Server) gebruiken dan heeft u een .pfx bestand nodig. In een .pfx bestand worden het Servercertificaat en de bijbehorende private sleutel gecombineerd. Hieronder staan de stappen beschreven om een .pfx bestand te maken van de sleutel die u eerder zelf heeft aangemaakt en het servercertificaat dat u van KPN ontvangt.
 
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 .pfx bestand te maken met behulp van OpenSSL dient u over de volgende items te beschikken:

  • Het eerder aangemaakte .key bestand met daarin de private key;
  • Het wachtwoord behorend bij dit .key bestand;
  • Het nieuwe certificaat (.pem bestand).

1. Start de Terminal op

Het maken van het .pfx bestand wordt gedaan in de Terminal. Druk op

[command ⌘] + [spatie]

om de zoek functie te openen. Zoek op ˋTerminalˊ en druk op [Enter ↵]. De terminal wordt nu geopend.

2. Ga naar de map waarin het sleutelpaar en de csr is gemaakt

Tijdens het aanmaken van de CSR met OpenSSL heeft u een map “certificaten” aangemaakt. In deze map dient u het certificaat dat u per e-mail van KPN ontvangt op te slaan. Ga naar deze map en controleer de inhoud door de volgende commando’s uit te voeren in de terminal:

cd certificaten
ls

mac os terminal directory
Zorg er voor dat in ieder geval de volgende bestanden in deze map aanwezig zijn:

  • server.key
  • servercertificaat.pem

Het bestand [server.key] is door u gemaakt voor de aanvraag van het servercertificaat. Het bestand [servercertificaat.pem] is het certificaat dat u van KPN ontvangt nadat de aanvraag is verwerkt.

3. Maak het .pfx bestand met OpenSSL

Voor het maken van een .pfx bestand met OpenSSL heeft u de twee volgende mogelijkheden:

  1. 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 uw bestand met daarin de private key, [servercertificaat.pem] met de naam van het ontvangen .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.

  2. 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 uw bestand met de daarin de private key, [servercertificaat.pem] met de naam van het ontvangen .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 zelf heeft gekozen tijdens het aanmaken van de CSR met OpenSSL.

Enter pass phrase for [server.key]:
  • Als de [server.key] past bij [servercertificaat.pem] dan wordt u gevraagd om tweemaal een Export Password te kiezen om de .pfx te beveiligen.
    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

    De gebruikte private key komt dan niet overeen met het ontvangen certificaat. Zoek het juiste .key bestand en begin opnieuw vanaf stap 2.

De bestandsnaam van het nieuwe bestand is [certificaat.pfx] en is zichtbaar als u opnieuw het commando ˋlsˊ uitvoert in de terminal.

openssl pfx creation mac os

 
Het nieuwe .pfx bestand kunt u nu met gebruik van het gekozen wachtwoord importeren in de gewenste toepassing(en).