Déplacer un certificat SSL d'un serveur à un autre
Shared FAQ page chrome (breadcrumb, dates, read time, «Continuer la lecture», enquiry block, category labels): see INDEX-AND-CHROME.md. Translate once.
Body
Introduction
Chaque serveur a besoin de son certificat SSL dans un format précis pour le traiter : une installation Windows/IIS exige le SSL au format .pfx, les serveurs Linux/Apache ou Nginx exigent le certificat au format .crt, et d'autres serveurs comme HAProxy l'exigent au format .pem. Il suffit d'exporter les certificats depuis le serveur où ils sont installés aujourd'hui et de les convertir au format qu'exige le serveur de destination. Veillez à exporter les certificats avec leur clé privée et avec les certificats intermédiaires utilisés avec eux.
#1 Déplacer un certificat SSL d'un serveur IIS vers un autre serveur IIS.
Aucune conversion n'est nécessaire entre deux serveurs IIS.
1.) Ouvrez IIS en tant qu'administrateur et trouvez l'option « Server Certificates » dans la fenêtre Home.
2.) Sélectionnez dans la liste le certificat à exporter, faites un clic droit dessus et cliquez sur Export.
3.) L'export vous demande le dossier de destination des certificats exportés et un mot de passe pour les protéger.
4.) Copiez le certificat depuis son emplacement d'export et déplacez-le vers un emplacement du serveur IIS de destination. Ouvrez IIS sur le serveur de destination en tant qu'administrateur, ouvrez « Server Certificates » depuis les options de l'écran Home et choisissez Import dans le volet de gauche. Parcourez et sélectionnez le fichier du certificat, saisissez le mot de passe utilisé pour l'export depuis l'autre serveur, puis cliquez sur « Ok ».
5.) Vous pouvez maintenant installer ce certificat importé pour votre domaine. Ouvrez IIS avec les droits d'administrateur, dépliez « Sites », cliquez sur le site web sur lequel installer le certificat. Cliquez sur « Bindings » dans le volet de gauche, cliquez sur le bouton « Add », choisissez le certificat SSL importé dans la liste déroulante, ajoutez le nom d'hôte et cliquez sur « Ok ».
Redémarrez le site web depuis l'option « Manage Web Site » du volet de gauche.
#2 Copier un SSL d'un serveur Windows/IIS vers un serveur Linux/Apache
1.) Exportez les certificats depuis le serveur Windows IIS comme décrit ci-dessus (étapes 1, 2 et 3).
2.) Copiez le certificat .pfx exporté du serveur Windows vers le serveur Linux. Vous pouvez utiliser une application comme WinSCP ou le service FTP du serveur Linux pour le transfert.
3.) Ouvrez un terminal sur le serveur Linux et exécutez la commande ci-dessous pour convertir le certificat .pfx au format .crt et clé privée.
openssl pkcs12 -in eurovps.pfx -out testconvert.txt -nodes
** remplacez testexport.pfx par le nom de votre fichier .pfx exporté et testconvert.txt par le nom que vous voulez donner au fichier du certificat converti.
Le fichier .txt converti a deux parties, la section de la clé privée et la section du certificat. Copiez le texte compris entre le marqueur «BEGIN PRIVATE KEY» et le marqueur «END PRIVATE KEY» dans un autre fichier et nommez-le domain.key. Copiez le texte compris entre le marqueur «BEGIN CERTIFICATE» et le marqueur «END CERTIFICATE» dans un autre fichier et nommez-le domain.crt. Ce sont la clé privée et le certificat du domaine, que vous pouvez installer directement dans Apache, Nginx ou depuis un panneau de contrôle comme Plesk ou cPanel.
#3 Copier des certificats SSL d'un serveur Apache vers un autre serveur Apache.
1.) L'emplacement du fichier du certificat SSL sur le serveur source se trouve dans le fichier de configuration d'Apache. La configuration Apache se trouve en général à l'un des emplacements ci-dessous.
/etc/apache2/conf/httpd.conf
/etc/httpd/conf/httpd.conf
/etc/apache2/apache2.conf
/etc/httpd/httpd.conf
Vous pouvez aussi utiliser la commande « httpd -V » dans le terminal, qui affiche le fichier de configuration chargé par Apache.
2.) Dans le VirtualHost du domaine, notez les trois chemins SSL :
<VirtualHost 123.456.789.10:443>
ServerName domain.com
ServerAlias www.domain.com mail.domain.com
DocumentRoot /var/ww/html/domain.com
--
SSLEngine on
SSLCertificateFile /etc/ssl/crt/primary.crt
SSLCertificateKeyFile /etc/ssl/crt/private.key
SSLCertificateChainFile /etc/ssl/crt/intermediate.crt
…..
….
…
</VirtualHost>
Repérez les emplacements de SSLCertificateFile, SSLCertificateKeyFile et SSLCertificateChainFile dans le virtualhost du domaine, copiez les fichiers depuis ces emplacements et déplacez-les au même endroit, ou à un emplacement de votre choix, sur le serveur de destination. Modifiez l'entrée virtualhost du domaine dans l'Apache du serveur de destination pour que SSLCertificateFile, SSLCertificateKeyFile et SSLCertificateChainFile pointent vers l'emplacement des certificats.
Testez la syntaxe de la configuration Apache (apachectl configtest) et rechargez-la (service httpd reload) pour activer le nouveau SSL du domaine.
#4 Copier des certificats SSL d'un serveur Linux/Apache vers un serveur Windows IIS
1.) Repérez les emplacements des fichiers SSLCertificateFile, SSLCertificateKeyFile et SSLCertificateChainFile dans le virtualhost Apache du domaine (voir #3.1 et #3.2).
2.) Copiez les fichiers dans un dossier de test sur le serveur.
mkdir /root/ssl/
cp /etc/ssl/crt/primary.crt /root/ssl/primary.crt
cp /etc/ssl/crt/private.key /root/ssl/private.key
cp /etc/ssl/crt/intermediate.crt /root/ssl/intermediate.crt
3.) Utilisez la commande openssl ci-dessous pour convertir les certificats et la clé au format .pfx.
openssl pkcs12 -export -out eurovpstest.pfx -inkey /root/ssl/private.key -in /root/ssl/primary.crt -certfile /root/ssl/intermediate.crt
Remplacez eurovpstest.pfx par le nom de fichier de votre choix.
Une fois les fichiers convertis, transférez-les sur le serveur Windows par FTP et importez-les dans IIS comme décrit aux points #1.4 et #1.5.
Extrait de la FAQ EuroVPS.
Plus dans la catégorie « Guides »Votre prochain partenaire d'infrastructure
Encore
une question ?
Dites-nous ce que vous cherchez à faire. Un ingénieur lira votre message et vous répondra.
+357 222 32280
Commençons par votre environnement.
Un peu de contexte nous aide à démarrer la bonne conversation.
