Problema operativo

La caducidad de los certificados es predecible, pero puede provocar caídas cuando la información está dispersa o los avisos se repiten hasta dejar de ser útiles.

Solución

Un servicio NestJS programado consulta los certificados mediante OpenSSL, extrae notAfter, guarda el estado en PostgreSQL y compara la fecha con umbrales configurables.

Decisiones

  • Persistir cada comprobación para conservar histórico.
  • Registrar si ya se notificó para evitar mensajes repetidos.
  • Detectar una nueva fecha después de la renovación.
  • Mantener la lógica de programación junto al servicio.

Flujo

Lista de URL → comprobación TLS → lectura de notAfter → persistencia → evaluación del umbral → notificación.

Aprendizaje

Un cron ejecuta tareas; no resuelve por sí solo el estado, la deduplicación ni el ciclo de renovación.