Comment convertir un certificat au format PFX ?
I. Présentation
Dans ce tutoriel, nous allons voir comment convertir un certificat X.509 au format CRT en certificat PFX qui intègre la clé privée à partir de l'utilitaire OpenSSL. Lorsque l'on importe un certificat sur certains systèmes, le format PFX est parfois demandé afin d'importer à la fois le certificat et la clé privée correspondante. Si l'on a seulement le fichier du certificat avec l'extension CRT et la clé privée (fichier KEY ou PEM), on doit procéder à une petite manipulation pour générer le certificat au format PFX. Cela va permettre de générer un fichier qui va regrouper le certificat X.509 et la clé privée. Sans cela, on est un peu bloqué.
Pour réaliser cette manipulation, nous allons utiliser l'outil OpenSSL puisqu'il est excellent pour générer des certificats, mais aussi réaliser différentes manipulations comme celle que nous allons faire. Je vais utiliser une machine sous Linux, mais il existe également des binaires Windows pour ceux qui préfèrent.
II. OpenSSL : obtenir un certificat PFX
Comme point de départ, je dispose des deux fichiers suivants :
- Certificat : itconnect.crt
- Clé privée : itconnect.key
Il ne me reste plus qu'à me connecter sur ma machine Linux afin d'utiliser OpenSSL. Si le paquet n'est pas installé sur votre machine, je vous invite à le faire dès maintenant :
sudo apt-get update sudo apt-get install openssl
Ensuite, positionnez-vous dans le répertoire où se situent les fichiers du certificat. Nous allons pouvoir convertir notre certificat et obtenir le fichier de sortie "itconnect.pfx". La commande magique est la suivante :
openssl pkcs12 -inkey itconnect.key -in itconnect.crt -export -out itconnect.pfx
L'option "-inkey" permet de préciser le fichier de la clé privée, tandis que "-in" correspond au certificat. La valeur "pkcs12" correspond au format "PKCS#12" qui va permettre de stocker la clé privée et le certificat dans le même fichier (ce qui donnera notre fichier PFX). Enfin, les options "-export" et "-out" permettent de faire un export dans le fichier de sortie spécifié.
Au moment d'exécuter cette commande, vous allez obtenir ceci :
Enter Export Password: Verifying - Enter Export Password:
Cette étape permet de préciser un mot de passe qui sera utilisé pour protéger la clé privée. Ainsi, pour importer le certificat PFX sur une nouvelle machine, il faudra connaître ce mot de passe puisqu'il correspond à la clé privée associée à ce mot de passe. Choisissez un mot de passe complexe et mettez-le au chaud dans votre gestionnaire de mots de passe.
Voilà, le fichier PFX est là, il ne reste plus qu'à l'importer sur le serveur de destination. Une commande assez simple, mais à connaître, car elle s'avère bien pratique.
Bonjour, excellent tutoriel merci.
Je me demandais si ça serait pas une mauvaise idée que de faire un cour sur les certificats?
Je sais que je les manipule au travail, mais tout est assez nébuleux, entre les différents types de fichier
crt, pfx etc etc. Clé privé, clé public, autorité de certification, qui a quoi… Tout ça c’est nébuleux, enfin je m’en sors, mais voila, je lance une idée 🙂