Let's Encrypt

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 [email protected]

     ### 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.

qualys_ssl_labs.jpg
Avatar de Guillaume Kulakowski

À propos de l’auteur

Derniers articles sur le journal

  • SeedboxSync v4.1 : Authentification OIDC, Gravatar et refonte de l’administration
    Découvrez les nouveautés de SeedboxSync v4.1 : intégration d’un système d’authentification natif et OIDC (SSO), support de Gravatar, gestion des utilisateurs en CLI, formulaires Flask-WTForm et transition vers Peewee-Migrate.
  • De Jellystat à Jellydash : moderniser le suivi de mon serveur Jellyfin
    Pourquoi et comment j’ai remplacé Jellystat par Jellydash pour le suivi des statistiques de mon serveur Jellyfin. Retour d’expérience sur la découverte de cet outil moderne, léger et prometteur repéré dans la newsletter selfh.st.
  • SeedboxSync 4.0 : Fusion de l’IHM et du CLI
    La v4.0.0 de SeedboxSync marque un tournant majeur : fusion du CLI et du frontend en une seule application, migration de la configuration en base de données, planificateur Python natif et passage à SQLite WAL. Tour d’horizon des nouveautés et des changements d’architecture.
  • Modernisation du tooling dev sur SeedboxSync : Just, pnpm, uv & Ruff
    SeedboxSync fait peau neuve côté tooling ! Retour sur la modernisation de mon environnement de dev : abandon du bon vieux Makefile au profit de Just, transition vers pnpm pour un gain de temps spectaculaire côté frontend, et adoption de uv et Ruff pour booster l’écosystème Python. Moins de friction, plus de vitesse : découvrez le détail de cette mise à jour.

Articles à la une