Apache - Installer un certificat SSL

Dernière mise à jour sur 28 sept. 2023 à 10:23:08.
Catégorie: Tout sur les certificats SSL | Configuration SSL

Apache SSL SSL Certificaten

Ce manuel vous explique comment installer un certificat qui vient de vous être émis sur le serveur web Apache. Pour en savoir plus comment générer votre demande de certificat, consultez l'article « Comment générer une demande de certificat avec OpenSSL ».

Apache - Installation certificat SSL

Pas 1: Créez un bundle de certificats (optionnel)

Apache se sert de deux directives pour identifier les certificats SSL, une pour le vôtre, et une pour les certificats intermédiaires et root de l'émetteur.

Selon l'émetteur de certificats que vous avez choisi, vous recevrez ou bien un seul fichier pret à l'emploi contenant tous les certificats, un fichier contenant votre certificat et un autre contenant tous ceux de l'émetteur, ou des fichiers distincts pour chaque certificat. Le plus souvent, ce sera le deuxième scénario, ou votre certificat sera indépendant, et les autres seront groupés, pour être employé directement dans Apache.

Si vous recevez de votre CA des fichier distincts, employer la commande suivante pour les concaténer dans l'ordre inverse. S'il n'y a qu'un certificat intermédiaire, bien entendu n'en ajoutez qu'un.

cat intermediaire_2.crt intermediaire_1.crt CA_root.crt >> /etc/certs/bundle.crt

L'ordre dans laquelle ils sont concaténés est importante:

  • D'abord les certificats intermédiaires, s'il y en - en général un, parfois deux
  • Ensuite le certificat root

Le certificat root n'est pas strictement nécessaire, puisqu'il est déjà connu des navigateurs, mais cela ne peut mal de l'inclure pour obtenir une chaine complète.

Si vous reçu votre certificat et un bundle des certificats de l'émetteur, il vous suffit de les copier dans le dossier où vous gardez vos certificats, par exemple /etc/certs.

Pas 2: Modifiez le fichier virtual hosts de Apache

Ouvrez le fichier virtual hosts SSL de votre serveur Apache. Suivant votre distribution, il pourrait se trouver à un des endroits suivants:

  • /etc/httpd pour les distros Red Hat, CentOS et Fedora
  • /etc/apache2 pour les distros Debian, Ubuntu et dérivées

Si vous hésitez quant à l'endroit où trouver vos fichiers de configuration, essayez de les trouvez à l'aide de la commande suivante, exécutée dans le dossier /etc ou un des dossiers susmentionnés:

grep -r VirtualHost *

Ajouter un nouveau block VirtualHost au fichier virtual hosts. Notez que dans l'exemple ci-dessous, vous devrez modifier les dossiers pour qu'il pointent vers la racine de votre site web, et les directives SSL pour qu'elles correspondent à l'endroit où vous avez sauvegardé votre clé et vos certificats. Il peut être plus aisé de copier un site web existant et d'en modifier les paramètres.

<Virtualhost :443="">
 DocumentRoot /home/www/public_html/www.mondomaine.com/public/
 ServerName www.mondomaine.com

<strong> SSLEngine on
 SSLCertificateFile /etc/certs/www.mondomaine.com.crt
 SSLCertificateKeyFile /etc/certs/www.mondomaine.com.key
 SSLCertificateChainFile /etc/certs/bundle.crt
</strong></Virtualhost>

Notez bien que la configuration ci-dessus n'est qu'une configuration minimale d'un site web SSL, et qu'il est important de paramétrer votre serveur Apache pour une meilleure performance et une plus grande sécurité. Kinamo vous conseille de consulter les articles à ce sujet dans la Knowledge Base.

Pas 3: Testez your configuration

C'est en général une bonne idée de tester votre configuration avant de redémarrer Apache, pour ne pas entraver la bonne marche d'autres sites s'il y a une erreur de paramétrage. Modifier la commande ci-dessous si votre fichier de configuration principal de Apache se trouve à un autre endroit. Cela se fait avec une des commandes suivantes:

httpd -t
apachectl configtest
apache2ctl configtest

Pas 4: Relancez Apache

Redémarrez Apache avec une des commandes suivantes, selon votre distribution:

/etc/init.d/httpd restart
service httpd restart
apachectl -k restart

Pas 5: Déboguage

Si votre certificat ne s'affiche pas correctement dans le navigateur, contrôlez si la chaine entière de certificats est envoyé par le serveur web avec la commande suivante, en remplaçant www.kinamo.be par votre propre nom de domaine:

openssl s_client -connect www.kinamo.be:443
...
Certificate chain
 0 s:/1.3.6.1.4.1.311.60.2.1.3=BE/businessCategory=Private Organization/serialNumber=0861.077.215/C=BE/ST=Antwerpen/L=antwerpen/O=Kinamo NV/CN=www.kinamo.be
 i:/C=US/O=GeoTrust Inc./CN=GeoTrust Extended Validation SSL CA - G2
 1 s:/C=US/O=GeoTrust Inc./CN=GeoTrust Extended Validation SSL CA - G2
 i:/C=US/O=GeoTrust Inc./CN=GeoTrust Primary Certification Authority

Vous devriez voir une chaine de certificats commençant par le vôtre et se terminant par le certificat principal de l'émetteur.

Pas 6: Test de sécurité

Visitez la page de test de Qualys SSL Labs pour vérifier si votre serveur web et votre certificat correspondent au dernières normes de sécurité.


Articles connexes

Paramètres des serveurs mail Kinamo (feuille de triche)

L'article suivant vous donne un résumé de la configuration et noms du serveurs mail de Kinamo. Avec la liste ici...

En savoir plus

Créer un filtre anti-spam avec le Kinamo Webmail

L'article suivant vous explique comment ajouter un filtre spécial pour mettre des messages SPAM automatiquement dans un dossier dans votre...

En savoir plus

Acheter un certificat SSL? Qu'est un certificat SSL?

Vous voulez acheter un certificat SSL? Mais, c'est quoi un certificat SSL? Et pourquoi est-ce que tous le monde dit...

En savoir plus

Besoin d'aide supplémentaire?

Vous n'avez pas obtenu de réponse à toutes vos questions?
Ne vous inquiétez pas, faites une demande d'assistance!

Sélectionnez votre langue

Toutes les langues: