Voici une courte note sur la façon de configurer Apache pour utiliser un fichier de certificat pour SSL ou Comment activer https dans le serveur Apache httpd. Après avoir activé SSL dans la configuration du serveur Web, vous devriez pouvoir accéder à l'application via https.
Installer le plug-in mod_ssl
1. Assurez-vous que mod_ssl est installé.
# rpm -qa | grep mod_ssl
2. Si mod_ssl n'est pas installé, installez-le en utilisant yum :
# yum install mod_ssl
Modifier le certificat SSL et les clés
1. Modifiez /etc/httpd/conf.d/ssl.conf avec les noms de fichier du nom du serveur et les informations du certificat SSL. Les paramètres à modifier sont
a. Nom du serveur
b. SSLCertificateFile
c. SSLCertificateKeyFile
# vi /etc/httpd/conf.d/ssl.conf # ServerName www.example.com:443 SSLCertificateFile /etc/pki/tls/certs/localhost.crt SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
Ici,
– Le ServerName doit correspondre au nom commun (CN) du certificat SSL, ou les navigateurs clients obtiendront une "incompatibilité de domaine " message. Pour afficher le nom commun (CN) du certificat :
# openssl x509 -noout -text -in localhost.crt | grep CN[/code]
– Le SSLCertificateKeyFile est la clé privée associée au certificat (la clé publique).
– Vérifiez que l'élément Écouter directive dans ssl.conf est correcte pour votre configuration. Par exemple, si une adresse IP est spécifiée, elle doit correspondre à l'adresse IP à laquelle le service httpd est lié.
Redémarrer le serveur Web Apache
Pour que les modifications prennent effet, nous devons redémarrer le serveur Web Apache.
Pour CentOS/RHEL 5,6
# service httpd restart
Pour CentOS/RHEL 7
# systemctl restart httpd.service
Vérifiez la connectivité SSL à partir de la ligne de commande
Plusieurs outils sont disponibles pour tester la connectivité SSL. En fonction de ce qui doit être testé, utilisez l'une des méthodes décrites ci-dessous.
1. OpenSSL s_client
Utilisez 'openssl s_client -connect TARGET:PORT ‘ pour tester et dépanner les connexions SSL/TLS à un serveur cible. Pour tester un serveur Web sur le port standard :
# openssl s_client -connect www.example.com:443
2. cURL
Cet outil est souvent le premier choix car il permet de basculer rapidement entre les protocoles http et https.
# curl --head https://www.example.com