Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: Migrated to Confluence 5.3

Installer un certificat SSL gratuit Let's Encrypt sur Apache 2.4 et Debian 8 en moins de 10 minutes

 

Let's Encrypt fournit gratuitement des certificat SSL, valide 3 mois qui se renouvellent automatiquement.

Nous allons voir comment installer le certificat via le client certbot recommandé par l'EFF, puis ensuite obtenir le meilleur niveau de sécurité.

Installer le certificat

Etape 1 : Ajouter les dépôts pour Debian 8 (Jessie)

Les paquets pour Debian 8 se trouve dans les backports

Créer un fichier source et renseigner le dépôt :

Bloc de code
themeEmacs
languagebash
nano /etc/apt/sources.list.d/backports.list
deb http://ftp.us.debian.org/debian/ jessie-backports main

Etape 2 : Installer le client Certbot

Bloc de code
themeEmacs
languagebash
aptitude update
aptitude install python-certbot-apache -t jessie-backports

Etape 3 : Exécuter le client

Bloc de code
themeEmacs
languagebash
certbot --apache

Suivre les indication de l'assistant. Si le vhost (HTTP) Apache est bien configuré, l'assistant va le trouver et s'occuper automatiquement de la configuration.

Vous pouvez choisir entre laisser le site accessible en HTTP et en parallèle HTTPS, ou bien rediriger l'HTTP vers la version HTTPS

Il suffit ensuite de redémarrer apache via "service apache2 restart" pour que le site soit accessible en HTTPS (à condition que le firewall de la machine le permette).

 

 

Info
titleBon à savoir
Conseil : tester le renouvellement

On peut simuler un renouvellement pour être certain qu'il fonctionnera correctement (le service crée automatiquement une tâche cron pour cela) :

Bloc de code
themeEmacs
languagebash
certbot renew --dry-run

 

 

Par défaut, le niveau de chiffrement est correct ; SSLv2 et v3 désactivé, suite de ciphers robuste, Foward Secrecy activé, SSL compression off...

On obtiens (à conditions d'avoir une installation Apache et Openssl à jour : 2.4.10 dans cet exemple) une note de A sur ssllabs.com

On peut néanmoins renforcer un peu plus la sécurité en effectuant quelques manipulations simples

Renforcer la sécurité et obtenir la note maximal (A+) sur ssllabs.com

 

Activer l'OCSP stappling

Ajouter à la fin du fichier de config du module ssl les directives suivantes :

Bloc de code
themeEmacs
languagebash
title/etc/apache2/mods-enabled/ssl.conf
SSLUseStapling on
SSLStaplingCache "shmcb:logs/stapling-cache(150000)"

Activer le Strict Transport Security (HSTS)

Ajouter dans le fichier de config de Let's Encrypt les directives suivantes :

Bloc de code
themeEmacs
languagebash
title/etc/letsencrypt/options-ssl-apache.conf
Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
Header always set X-Frame-Options DENY
Header always set X-Content-Type-Options nosniff

 

Après avoir redémarré Apache, on devrait obtenir la note de A+ sur le test de ssllabs.com