Les certificats TLS sont indispensables pour chiffrer les communications entre les navigateurs et les applications web. Jusqu'à présent, les certificats étaient achetés auprès d'autorités de certification commerciales et renouvelés manuellement. Nous avons mis en place Let's Encrypt pour passer à des certificats gratuits, renouvelés automatiquement, sans plus jamais avoir à surveiller une date d'expiration.

Qu'est-ce que Let's Encrypt ?

Let's Encrypt est une autorité de certification gratuite et automatisée qui délivre des certificats TLS. Associée à des clients comme Certbot, elle permet de chiffrer les communications web et de renouveler les certificats sans intervention manuelle.

Le problème : des certificats achetés et renouvelés à la main

Avant la mise en place de Let's Encrypt, la gestion des certificats TLS reposait sur un processus manuel et coûteux :

Un certificat expiré ne prévient pas. L'application devient inaccessible et les utilisateurs voient une alerte de sécurité dans leur navigateur - exactement l'opposé de ce qu'on cherche à obtenir avec un certificat TLS.

Let's Encrypt : des certificats gratuits et automatiques

Let's Encrypt est une autorité de certification gratuite, automatisée et reconnue par tous les navigateurs. Elle délivre des certificats TLS valides, sans coût et sans procédure manuelle. Deux avantages majeurs :

Une application dédiée au renouvellement automatique

Nous avons mis en place une application de gestion des certificats Let's Encrypt qui prend en charge l'ensemble du cycle de vie : obtention initiale, renouvellement avant expiration et déploiement automatique sur les services concernés. Cette application surveille en permanence les certificats en place et déclenche le renouvellement bien avant la date d'expiration - sans aucune action manuelle requise.

L'inscription et la configuration initiale sont relativement simples : pointer vers le domaine à sécuriser, valider la propriété du domaine, et le certificat est émis en quelques secondes. La complexité résiduelle est gérée une seule fois lors de la configuration, puis entièrement automatisée.

Ce que cela change au quotidien

La mise en place de Let's Encrypt a transformé la gestion des certificats en quelque chose que les équipes n'ont plus à penser :

Déploiement conteneurisé, authentification centralisée et mises à jour maîtrisées

Cette application est déployée en conteneur Docker, orchestré et provisionné via Ansible. Cette approche garantit un déploiement reproductible, documenté et homogène d'un environnement à l'autre : la configuration est décrite sous forme de code, ce qui élimine les installations manuelles et fiabilise chaque mise en service.

Nous assurons les mises à jour de manière transparente pour les utilisateurs : les montées de version sont préparées, testées et appliquées de façon contrôlée, sans interruption perceptible du service. L'établissement bénéficie ainsi d'une application toujours à jour et sécurisée, sans avoir à gérer lui-même la complexité technique des mises à jour.

L'accès à cette application repose sur une authentification centralisée par OIDC avec Keycloak. Comme l'ensemble des applications que nous déployons, elle s'appuie sur un fournisseur d'identité unique : les utilisateurs se connectent avec les mêmes identifiants sur tout le parc applicatif, la gestion des accès est mutualisée et les règles de sécurité (mot de passe, second facteur, révocation) sont appliquées de façon homogène. Ce socle d'authentification unifié simplifie l'expérience utilisateur et renforce la maîtrise des accès à l'échelle du système d'information.

Notre déploiement

Let's Encrypt est intégré directement dans notre stack NGINX : les deux instances de reverse proxy (interne et DMZ) gèrent automatiquement leurs certificats via Let's Encrypt. Le renouvellement est déclenché automatiquement par l'application de gestion des certificats, qui surveille les échéances et renouvelle avant expiration. L'ensemble est supervisé par Uptime Kuma, qui surveille également les dates d'expiration des certificats et alerte en cas d'anomalie.

Intégration au système d'information

Let's Encrypt est le socle TLS de l'ensemble de la stack : tous les services exposés via NGINX bénéficient de certificats Let's Encrypt renouvelés automatiquement. Uptime Kuma surveille les dates d'expiration en complément, fournissant une double sécurité. La configuration est gérée par Ansible pour garantir la cohérence entre les différentes instances.

Bénéfices concrets

Let's Encrypt s'inscrit dans notre approche d'un système d'information hospitalier open source, souverain et maîtrisé, où chaque brique est déployée et documentée pour rester exploitable en autonomie par les équipes.

Conversion automatique en PFX pour les cas particuliers

Certaines applications Windows ou équipements réseau ne savent pas consommer un certificat au format PEM natif de Let's Encrypt. Ils attendent un certificat au format PFX (PKCS#12), qui regroupe le certificat et la clé privée dans un fichier protégé par mot de passe.

Nous avons mis en place un système qui convertit automatiquement les certificats Let's Encrypt au format PFX à chaque renouvellement. Ces applications bénéficient ainsi des avantages de Let's Encrypt - certificats gratuits, renouvellement automatique - sans aucun compromis sur leur mode de fonctionnement natif. La conversion est transparente : elle s'effectue en arrière-plan, sans intervention manuelle, et le PFX à jour est disponible dès le renouvellement du certificat.

Un projet de déploiement open source ?

Nous déployons et intégrons des solutions open source souveraines pour les établissements de santé.

Demander un diagnostic de 30 min →