Certificat Let’s Encrypt configuré au top

Dernièrement j’ai dû, pour le compte d’un client, faire une étude pour rendre un site compatible ATS au niveau de la sécurité. Il en est ressorti plusieurs problèmes :
- La CVE-2016-2107 pour cause de lib-openssl pas à jour.
- Des Ciphers et des protocoles pas top…
- Pas de PFS.
Le bilan : une note de « F ».
Du coup, j’ai regardé un de mes domaines SSL et je me suis rendu compte que moi aussi je n’étais pas au top… Du coup une petite correction s’imposait.
Première étape : mettre à jour le container apache
Cette mise à jour du container apache permet d’avoir les dernières versions de lib-openssl et d’apache.
Pour ça, rien de plus simple :
docker-compose build httpd ; docker-compose stop httpd ; docker-compose rm httpd ; docker-compose up -d httpd
Seconde étapes : la configuration
aller sur Mozilla SSL Configuration Generator pour trouver la configuration qui vous va bien. Pour moi je suis parti là dessus.
Troisième étape : un peu de ménage
En effet, j’ai du faire le ménage dans la configuration de base de RHEL7.
Quatrième étape : Let’s Encrypt
Pour avoir un certificats SSL gratuit, il suffit d’utiliser Let’sEncrypt ! Cependant, faites gaffe, il existe plein de truc plus ou moins lourd pour générer des certificats SSL chez Let’s Encrypt. Perso j’ai retenu acme-tiny car je n’ai rien trouvé de plus petit !
Une fois acme-tiny en place, au niveau de votre serveur apache, il faut juste ouvrir votre port 80 et tout rediriger sur le 443 sauf bien sûr le challenge Let’s Encrypt :
<virtualhost>
ServerName sub.domain.ltd
ServerAdmin me@domain.ltd
### Let's encrypt
Alias /.well-known/acme-challenge/ /var/www/challenges/
<directory>
# Allow open access: Require all granted
</directory>
### Redirect to HTTPs
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/.well-known/acme-challenge/
RewriteRule (.*) https://sub.domain.ltd$1 [R=301,L]
</virtualhost>
Et c’est tout ! Plus qu’à contrôler avec Qualys SSL Labs.

Laisser un commentaire