Installer un certificat SSL let’s encrypt (Serveur Apache)

-Vérifier si les modules headers_module ssl_module et rewrite_module sont chargés

#apachectl -M

headers_module (shared)
rewrite_module (shared)
ssl_module (shared)

Pour activer les modules:

a2enmod ssl
a2enmod headers
a2enmod rewrite

-Télécharger Certbot

# wget https://dl.eff.org/certbot-auto

-Droit d’exécution:

# chmod a+x certbot-auto

# ./certbot-auto

-Création du certificat:

./certbot-auto certonly --webroot --webroot-path /path_document_root/domaine.tld/ --domain domaine.tld --email adressemail

/path_document_root/: le document root déclaré dans le vhost de votre domaine (DocumentRoot)
adressemail: votre adresse email pour les notifications d’expiration du certificat letsencrypt
-Les certificats (actifs) de votre domaine sont déposés sous le répertoire: /etc/letsencrypt/live/domaine.tld

-Configuration du vhost :

DocumentRoot /repertoire_racine/domaine.tld/
ServerName domaine.tld

SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/domaine.tld/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domaine.tld/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/domaine.tld/chain.pem
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCompression off
SSLOptions +StrictRequire
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-
SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-
SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-
SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-
SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3
-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
Header always set Strict-Transport-Security « max-age=31536000; includeSubDomains »

-Autoriser le port 443

Modifier le fichier /etc/apache2/ports.conf

Ajouter:

Listen 443
NameVirtualHost *:443

-Modifier le fichier /etc/apache2/sites-available/default-ssl

Ajouter VirtualHost *:443 au lieu de VirtualHost _default_:443

-Tester la configuration

apachectl configtest

-Relancer apache2

service apache2 restart

Pour tester le certificat ssl de votre domaine

https://www.ssllabs.com/ssltest/index.html