Certificado SSL expirado: qué pasa y cómo evitarlo
Un certificado SSL vencido tira tu sitio sin aviso. Por qué pasa, qué ve el usuario, y por qué solo te enteras cuando alguien llama a quejarse.
Son las 14:37 de un martes. Tu sitio deja de recibir pedidos. Nadie hizo deploy. El servidor está arriba. La base de datos responde. Pero Chrome muestra una pantalla roja gigante que dice "Tu conexión no es privada" y nadie pasa de ahí.
Bienvenido al club de quienes dejaron expirar el certificado SSL.
Qué es un certificado SSL y por qué expira
Un certificado SSL/TLS es un archivo firmado por una autoridad certificadora (Let's Encrypt, DigiCert, Sectigo, etc.) que dice: "este servidor es realmente el dueño del dominio tusitio.com". El navegador confía en ese archivo porque confía en quien lo firmó.
Toda firma tiene plazo de validez. Antes eran 2 años, luego 1 año, ahora el estándar es 90 días (Let's Encrypt) y el sector va hacia 47 días para 2029. La lógica: certificados de vida corta limitan el daño si la clave privada se filtra.
El problema es simple: si nadie renueva antes del vencimiento, el navegador deja de confiar y el sitio queda inaccesible.
Qué ve el usuario
Cada navegador tiene su versión del mismo aviso. En Chrome:
Tu conexión no es privada NET::ERR_CERT_DATE_INVALID Es posible que los atacantes estén intentando robar tu información de tusitio.com
Hay un enlace minúsculo "Avanzado" que permite continuar igual — pero:
- La gran mayoría de los usuarios desiste ahí mismo.
- Las apps móviles que consumen tu API simplemente fallan, sin opción de "avanzar".
- Los webhooks de otros sistemas (Stripe, gateways de pago) dejan de llegar — validan el certificado y abortan en silencio.
- Los bots de Google registran el error y pueden bajarte en el ranking.
En e-commerce, el efecto es instantáneo: cero pedidos hasta que alguien lo nota.
Por qué esto aún pasa en 2026
Podrías pensar que con Let's Encrypt y renovación automática ya nadie deja vencer un certificado. Error. Las causas más comunes:
1. La renovación automática se rompió y nadie lo vio. El cron de Certbot estaba configurado, pero el servidor fue migrado y la tarea no vino. Nadie lo probó. El certificado anterior tenía 80 días de validez cuando migró. Diez días después, expira.
2. El dominio se añadió al certificado, pero nunca se incluyó en la renovación. Compraste tienda.tusitio.com, generaste un certificado para ese subdominio, pero el script automático solo renueva tusitio.com. Tres meses después, solo la tienda cae.
3. Cambió la IP, cambió el proveedor, cambió el método de challenge. Let's Encrypt necesita probar que controlas el dominio. Si el método antiguo (HTTP-01 en la raíz) deja de funcionar porque moviste el servidor detrás de un proxy de Cloudflare, la renovación falla en silencio.
4. Certificado emitido manualmente. Alguien compró un certificado anual de una CA de pago, lo configuró a mano, y se fue de la empresa. La renovación no está automatizada en ningún lado. Vence sin aviso.
5. El email de aviso va a una bandeja muerta. Las certificadoras envían aviso 30/14/7 días antes del vencimiento — al email del contacto técnico registrado en WHOIS, que muchas veces es admin@empresa.com de alguien que se fue hace dos años.
Cómo enterarte antes que el usuario
La única defensa real es monitorear la validez activamente, fuera del servidor (porque si el servidor se rompe, no te va a avisar).
Una comprobación simple: cada hora, un bot externo se conecta a tu dominio, lee el certificado, ve la fecha de expiración, y dispara una alerta si faltan menos de 30 días, luego 7, luego 1. Tres escalones de alerta dan margen para actuar antes del desastre.
Lo que el monitor debe comprobar:
- Fecha de expiración (no basta — pega el 99% pero falla en emisión errónea)
- Cadena de certificados completa — un intermedio faltante causa error en Firefox/Safari aunque el cert sea válido
- Match del CN/SAN con el hostname accedido
- Versión del TLS (1.0/1.1 aún activos cuentan como problema)
- Revocación vía OCSP
Cómo Sentinela te avisa
Hacemos todo esto. El probe TLS verifica:
- Expiración del certificado hoja
- Validez de la cadena completa
- Match del CN/SAN
- Versiones de TLS habilitadas (alerta por 1.0/1.1 y ausencia de 1.3)
- Cipher suites débiles
- HSTS configurado
Y el monitor de uptime comprueba cada minuto si el handshake TLS aún cierra. Si el certificado vence a las 03:47 de un domingo, te notificamos en 60 segundos por email, webhook o Telegram — no el cliente furioso el lunes por la mañana.
El plan Free cubre un monitor, para siempre — el plan de monitoreo — se configura en 2 minutos y nunca más pierdes un vencimiento.
La regla simple
Si tu negocio depende de un sitio arriba, monitorear uptime sin monitorear el certificado SSL es dejar media casa sin llave. El servidor puede estar perfecto, el código puede estar perfecto, y un archivo de 4kb venció — y nadie compró nada hoy.
Verifica hoy. Configura la alerta hoy. Duerme más tranquilo.
Descubre en 30 segundos lo que tu dominio está mostrando.
Comprobación pasiva, sin tocar tu servidor. Sale una nota y una lista de hallazgos por gravedad — y tú decides si quieres seguirlo cada mes.