L’automatisation ACME ne remplace pas la surveillance des certificats
ACME automatise l’émission et le renouvellement des certificats TLS publics. Les équipes doivent aussi recenser les certificats qui ne passent pas par ce processus, désigner leurs responsables et configurer les alertes d’expiration.
acme.sh : certificat renouvelé, mais Nginx sert encore l’ancien
cert-manager : certificat Ready, mais mauvais certificat sur l’Ingress
Traefik sert le mauvais certificat : vérifier le SNI, les routeurs et ACME
Certbot a renouvelé le certificat, mais Nginx sert encore l’ancien
Ce qu’ACME automatise
La RFC 8555 définit ACME comme un protocole permettant d’automatiser la validation des identifiants et l’émission des certificats entre une autorité de certification et un demandeur. Avec des certificats de plus courte durée, le temps disponible pour effectuer ces étapes manuellement diminue.
ACME Renewal Information, normalisé par la RFC 9773, améliore le renouvellement. Un serveur ACME peut proposer des fenêtres de renouvellement, et un client peut signaler qu’il a correctement renouvelé et remplacé un certificat. Let’s Encrypt recommande de consulter fréquemment ARI et, lorsque c’est possible, de l’utiliser à la place d’un calendrier de renouvellement codé en dur.
ACME couvre
- Demande d’un certificat auprès d’un serveur ACME.
- Démontrer le contrôle des identifiants au moyen des types de défis pris en charge.
- Recevoir le certificat émis et, selon le client, le renouveler automatiquement.
- Fonctions de révocation et de gestion des certificats au niveau du compte.
La surveillance doit encore vérifier
- Quel certificat est réellement présenté sur chaque hôte, port et nom SNI.
- Quels points de terminaison publics et internes, fichiers et objets TLS Kubernetes se trouvent dans le périmètre de l’inventaire.
- Si la chaîne, l’émetteur, l’ensemble des SAN, le type de clé ou les règles TLS ont changé de manière inattendue.
- Quelle équipe est responsable du point de terminaison et reçoit les alertes à temps pour renouveler son certificat.
- Quels certificats internes, points de terminaison de PKI privée et certificats installés manuellement se trouvent en dehors du parcours ACME.
Vérifier les certificats après leur émission
ACME peut confirmer qu’un certificat a été émis ou renouvelé. Il ne recense pas les points de terminaison, hôtes privés ou clusters en dehors de ce processus ACME. Ces emplacements doivent être vérifiés séparément.
api-01.example.com- Nouveau certificat68 jours restants
api-02.example.com- Ancien certificat encore présenté7 jours restants
L’émission a réussi. Le déploiement reste à vérifier sur chaque point de terminaison.
Les pannes que l’automatisation n’évite pas
Certificats gérés en dehors du processus ACME
Les VPN, équipements, API privées, certificats installés manuellement et PKI internes peuvent rester en dehors de l’inventaire automatisé comme de son circuit d’alerte.
Seuls certains services sont automatisés
Le serveur web public est automatisé, mais le VPN, l’équipement, l’interface d’administration, l’API interne ou le point de terminaison propre à un client restent gérés manuellement.
Aucun responsable en cas de panne
Une équipe gère la tâche de renouvellement, une autre le service, et l’alerte arrive dans une boîte partagée que personne ne consulte pour traiter les incidents.
Hypothèses de renouvellement erronées
Un calendrier codé en dur ou le comportement d’un ancien client peut fonctionner avec des certificats de 90 jours, puis devenir fragile à mesure que leur durée de vie diminue et que les fenêtres de renouvellement évoluent.
Comment organiser le suivi
- Utilisez ACME pour l’émission et le renouvellement partout où le point de terminaison et l’autorité de certification le prennent en charge.
- Utilisez des clients compatibles ARI lorsqu’ils sont disponibles afin que l’autorité de certification puisse signaler les fenêtres de renouvellement suggérées et la nécessité d’un remplacement anticipé.
- Surveillez directement le point de terminaison, indépendamment du client ACME.
- Suivez les responsables, les destinations des alertes, les sources observées et les méthodes de renouvellement pour chaque certificat.
- Intégrez au même inventaire opérationnel les certificats internes et les points de terminaison qui n’utilisent pas un service ACME public.
- Déclenchez les alertes d’après ce que les utilisateurs et les systèmes voient réellement, pas seulement d’après la réussite de la tâche d’émission.
La place de Nocert
Nocert surveille les certificats présentés par les services TLS publics et internes accessibles, ainsi que ceux trouvés dans les fichiers et Kubernetes. Vous pouvez suivre les échéances des certificats gérés par ACME et par d’autres outils. Business et Custom affichent aussi les résultats des contrôles Compliance. Nocert ne remplace ni votre client ACME, ni votre autorité de certification, ni vos outils de déploiement.
Après un renouvellement ACME, vérifiez que les points de terminaison surveillés présentent le certificat attendu.
Sources primaires
Cette note s’appuie sur la norme ACME, l’extension ACME Renewal Information, le guide d’intégration de Let’s Encrypt et sa documentation relative aux limites de requêtes.
- RFC 8555 : environnement de gestion automatique des certificats
- RFC 9773 : extension ACME Renewal Information
- Guide d’intégration Let’s Encrypt
- Limites de requêtes de Let’s Encrypt et exemptions ARI pour les renouvellements
- Note de Nocert sur le raccourcissement de la durée de vie des certificats TLS