Utilisez les instructions de cette page pour utiliser OpenSSL afin de créer votre demande de signature de certificat (CSR), puis pour installer votre certificat SSL sur votre serveur Apache.
Pour les instructions concernant Ubuntu, consultez la page Ubuntu Server avec Apache2: Créer une CSR et installer un certificat SSL (OpenSSL). Pour les instructions concernant les autres systèmes d’exploitation et plateformes, consultez la page Créer une CSR (demande de signature de certificat) .
Vous pouvez utiliser ces instructions pour créer des CSR OpenSSL et installer tous les types de certificats SSL DigiCert sur votre serveur Apache: SSL standard, SSL EV, SSL multi-domaine, SSL EV multi-domaine et SSL Wildcard.
Pour créer votre demande de signature de certificat (CSR), consultez Apache: Création de votre CSR avec OpenSSL.
Pour un tutoriel en espagnol, consultez la page Apache Create CSR.
Pour installer votre certificat SSL, consultez Apache: Installation et configuration de votre certificat SSL.
Consultez nos instructions en espagnol pour l'installation d'un certificat SSL Apache.
Utilisez les instructions de cette section pour créer vos commandes shell afin de générer votre CSR Apache avec OpenSSL.
Comment générer une CSR pour Apache avec OpenSSL
Si vous préférez créer vos commandes shell pour générer votre CSR Apache, suivez les instructions ci-dessous.
Connectez-vous à votre serveur via votre client terminal (ssh).
Exécuter la commande
À l'invite de commande, saisissez la commande suivante:
openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr

Générer des fichiers
Vous avez maintenant lancé le processus de génération des deux fichiers suivants:
Lorsque le système vous demande le nom commun (nom de domaine), saisissez le nom de domaine pleinement qualifié (FQDN) du site que vous allez sécuriser.
Lorsque vous y serez invité, saisissez les informations relatives à votre organisation, en commençant par vos informations géographiques.
Votre fichier OpenSSL .csr est maintenant créé.
Commandez votre certificat SSL/TLS
Ouvrez le fichier .csr que vous avez créé avec un éditeur de texte.
Copiez le texte, y compris les balises -----BEGIN NEW CERTIFICATE REQUEST----- et -----END NEW CERTIFICATE REQUEST-----, et collez-le dans le formulaire de commande DigiCert.
Sauvegarder la clé privée
Sauvegardez le fichier .key généré. Vous en aurez besoin ultérieurement pour installer votre certificat SSL.
Certificat d'installation
Une fois que vous aurez reçu votre certificat SSL de DigiCert, vous pourrez l'installer sur votre serveur.
Si vous devez encore créer une demande de signature de certificat (CSR) et commander votre certificat, consultez Apache: Création de votre CSR avec OpenSSL.
Une fois votre certificat SSL validé et émis, vous pouvez l'installer sur votre serveur Apache (où la CSR a été générée) et configurer le serveur pour utiliser ce certificat.
Comment installer et configurer votre certificat SSL sur votre serveur Apache
Copiez les fichiers de certificat sur votre serveur.
Connectez-vous à votre compte DigiCert et téléchargez les fichiers de certificat intermédiaire (DigiCertCA.crt) et de certificat principal (votre_nom_de_domaine.crt).
Copiez ces fichiers, ainsi que le fichier .key que vous avez généré lors de la création de la CSR, dans le répertoire du serveur où vous conservez vos fichiers de certificat et de clé.
Trouvez le fichier de configuration Apache (httpd.conf) que vous devez modifier.
L'emplacement et le nom du fichier de configuration peuvent varier d'un serveur à l'autre, surtout si vous utilisez une interface spéciale pour gérer la configuration de votre serveur.
Le fichier de configuration principal d'Apache se nomme généralement httpd.conf ou apache2.conf. Il peut se trouver dans les répertoires /etc/httpd/ ou /etc/apache2/. Pour une liste complète des configurations d'installation par défaut d'Apache HTTPD sur différents systèmes d'exploitation et distributions, consultez la page Httpd Wiki - DistrosDefaultLayout.
La configuration du certificat SSL se trouve généralement dans un bloc <VirtualHost> d'un fichier de configuration distinct. Ces fichiers peuvent se trouver dans un répertoire tel que /etc/httpd/vhosts.d/, /etc/httpd/sites/ ou dans un fichier nommé httpd-ssl.conf.
Une façon de localiser la configuration SSL sur les distributions Linux consiste à effectuer une recherche à l'aide de grep, comme indiqué dans l'exemple ci-dessous.
Exécutez la commande suivante:
grep -i -r "SSLCertificateFile" /etc/httpd/
Identifiez le bloc SSL <VirtualHost> que vous devez configurer.
Si votre site doit être accessible via des connexions sécurisées (https) et non sécurisées (http), vous avez besoin d'un hôte virtuel pour chaque type de connexion. Créez une copie de l'hôte virtuel non sécurisé existant et configurez-le pour SSL comme décrit à l'étape 4.
Si votre site a seulement besoin d'être accessible de manière sécurisée, configurez l'hôte virtuel existant pour SSL comme décrit à l'étape 4.
Configurez le bloc <VirtualHost> pour le site compatible SSL.
Voici un exemple très simple d'hôte virtuel configuré pour SSL. Les éléments en bleu sont ceux que vous devez ajouter pour la configuration SSL.
<VirtualHost 192.168.0.1:443>
DocumentRoot /var/www/html2
ServerName www.yourdomain.com
SSLEngine on
SSLCertificateFile /path/to/your_domain_name.crt
SSLCertificateKeyFile /path/to/your_private.key
SSLCertificateChainFile /path/to/DigiCertCA.crt
</VirtualHost>
Veillez à adapter les noms de fichiers pour qu'ils correspondent à vos fichiers de certificat.
SSLCertificateFile est votre fichier de certificat DigiCert (par exemple, votre_nom_de_domaine.crt).
SSLCertificateKeyFile est le fichier .key généré lors de la création de la CSR (par exemple, votre_private.key).
SSLCertificateChainFile est le fichier de certificat intermédiaire DigiCert (par exemple, DigiCertCA.crt).
Testez votre fichier de configuration Apache avant de redémarrer.
Par mesure de précaution, vérifiez votre fichier de configuration Apache pour détecter d'éventuelles erreurs avant de redémarrer Apache.
Exécutez la commande suivante pour tester votre fichier de configuration (sur certains systèmes, il s'agit de apache2ctl):
apachectl configtest
Redémarrez Apache.
Vous pouvez utiliser les commandes apachectl pour arrêter et démarrer Apache avec la prise en charge SSL.
apachectl stop
apachectl start
Félicitations ! Vous avez installé avec succès votre certificat SSL.
Test de l'installation de votre certificat SSL/TLS
Test du navigateur
Pour un résultat optimal, veillez à fermer votre navigateur web puis à le relancer.
Visitez votre site avec l'URL sécurisée HTTPS (c'est-à-dire, allez sur https://www.example.com et non sur http://www.example.com).
Assurez-vous de tester votre site avec d'autres navigateurs qu'Internet Explorer. Ce dernier télécharge les certificats intermédiaires manquants, tandis que les autres navigateurs affichent une erreur si tous les certificats de la chaîne ne sont pas correctement installés.
Outil de diagnostic d'installation SSL DigiCert®
Si votre site est accessible au public, utilisez notre outil de test de certificat serveur pour vérifier l'installation de votre certificat SSL/TLS; il détecte les problèmes d'installation courants.
Dépannage
Si votre site web est accessible au public, notre outil de test de certificats SSL peut vous aider à diagnostiquer les problèmes courants.
Si vous recevez un avertissement « Certificat non approuvé », consultez les détails du certificat pour vérifier s'il s'agit bien du certificat attendu. Vérifiez les champs Sujet, Émetteur et Valide jusqu'au.
S'il s'agit du certificat attendu et que le certificat SSL est émis par DigiCert, alors votre fichier SSLCertificateChainFile n'est pas correctement configuré.
Si vous ne voyez pas le certificat attendu, il se peut qu'un autre bloc SSL <VirtualHost> précède celui que vous avez configuré récemment.
Les hôtes virtuels basés sur le nom ne sont pas possibles avec HTTPS à moins d'utiliser le même certificat pour tous les hôtes virtuels (par exemple, un certificat SSL générique ou multi-domaine).
Il ne s'agit pas d'une limitation d'Apache, mais du protocole SSL. Apache doit envoyer un certificat lors de la négociation SSL avant de recevoir la requête HTTP contenant l'en-tête Host. Par conséquent, Apache envoie toujours le fichier SSLCertificateFile du premier bloc <VirtualHost> correspondant à l'adresse IP et au port de la requête.
Pour obtenir de l'aide concernant le transfert de vos certificats vers d'autres serveurs ou entre différentes plateformes de serveurs, consultez nos instructions d'exportation OpenSSL.
Si vous devez désactiver la compatibilité SSL version 2 pour répondre aux exigences de conformité PCI, ajoutez la directive suivante à votre fichier de configuration Apache:
SSLCipherSuite HIGH:+MEDIUM:!SSLv2:!EXP:!ADH:!aNULL:!eNULL:!NULL
Si la directive existe déjà, vous devrez peut-être la modifier pour désactiver la version 2 du protocole SSL.
Pour obtenir des instructions sur la façon de corriger les erreurs courantes et des conseils supplémentaires, consultez la section Dépannage des erreurs de certificat SSL Apache.
Configuration du serveur Apache
Pour plus d'informations sur les configurations de serveur Apache permettant de renforcer votre environnement SSL, consultez les ressources suivantes:
Pour obtenir des instructions sur la désactivation du protocole SSL v3, consultez Apache: Désactivation du protocole SSL v3.
Pour plus d'informations sur l'activation du secret de transmission parfait, consultez la section Activation du secret de transmission parfait.