Un editor de SaaS descubre un certificado TLS válido para app.example.com emitido por una autoridad con la que nunca se ha puesto en contacto. El sitio está funcionando, el candado está en verde, nadie ha recibido una alerta. Al profundizar más, el equipo encontró que una validación de DNS se había aprobado tres semanas antes, probablemente después de comprometer el acceso al registrador o a una cuenta con el proveedor de DNS. Sin el registro de la CAA, no existían reglas que prohibieran esta transmisión.
La CAA (Autorización de autoridad de certificación) es un pequeño registro DNS, a menudo olvidado, que responde a una pregunta sencilla: ¿quién tiene derecho a firmar un certificado para este nombre?
Lo que la CAA permite y lo que no hace
Un registro CAA no cifra nada y no reemplaza a HTTPS. Indica a las autoridades certificadoras (CA) qué entidades pueden emitir un certificado para su dominio. Desde 2017, los miembros CA del Foro CA/B deben verificar la CAA antes de firmar, excepto en casos muy limitados.
| Etiqueta CAA | Efecto | Ejemplo |
|---|---|---|
problema | Autoriza una CA para certificados estándar | 0 problema "letsencrypt.org" |
problema salvaje | Permite una CA para comodines (*.domain) | 0 problema salvaje "digicert.com" |
iodef | Dirección de notificación en caso de solicitud no conforme | 0 iodef "mailto:secu@example.com" |
La CAA no protege contra una CA que ignora la regla (poco común pero históricamente documentado). Tampoco bloquea a un atacante que ya controla su servidor web o su clave privada. Sobre todo, cierra la puerta más silenciosa: la transmisión fraudulenta mediante validación DNS o HTTP.
Sin CAA, cualquier CA reconocida puede intentar validar su dominio. Con CAA, reduce el área de superficie a la lista blanca que defina.
Cuando la CAA se vuelve esencial
Tres situaciones lo convierten en una prioridad:
Renovación automática. Let's Encrypt, ZeroSSL o un ACME interno: si restringes las CA sin incluir la tuya, la renovación finaliza a la medianoche del domingo.
Multiproveedor. CDN, host, balanceador de carga: cada uno puede ofrecer su propio certificado. La CAA obliga a tomar una decisión explícita en lugar de una transmisión oportunista.
Dominios de alta visibilidad. Comercio electrónico, autenticación, API públicas: un certificado paralelo permite la interceptación sin afectar su infraestructura principal.
Sintaxis concreta dependiendo de tu pila
Ejemplo mínimo solo para un sitio Let's Encrypt:
ejemplo.com. Problema CAA 0 "letsencrypt.org"
ejemplo.com. CAA 0 problema salvaje "letsencrypt.org"
Si utiliza Cloudflare para TLS y mantiene Let's Encrypt en origen:
ejemplo.com. Problema CAA 0 "letsencrypt.org"
ejemplo.com. Problema CAA 0 "digicert.com"
Cloudflare utiliza DigiCert para sus certificados perimetrales; Let's Encrypt sigue siendo común en el lado del servidor. Omitir uno de los dos provoca fallos de renovación difíciles de diagnosticar.
| Escenario | CA que será autorizada | Trampa común |
|---|---|---|
| VPS + Certbot | letsencrypt.org | Olvidar issuewild mientras existe un *.domain |
| CDN nube naranja | Volumen de negocios de CDN + volumen de negocios original | Lista única Let's Encrypt |
| Certificado de empresa de vehículos eléctricos | Sólo su facturación contractual | Bloquear puesta en escena interna por error |
Errores que interrumpen la producción un viernes por la noche
CAA demasiado restrictiva antes de la migración. ¿Cambiar CA? Actualice la CAA antes de lanzar la nueva edición, no después.
TTL largo + propagación. Un CAA erróneo puede tardar horas en corregirse dependiendo del TTL. Bájelo temporalmente al realizar un cambio.
Subdominio con CAA vacío. Un registro CAA vacío (;) en un subdominio prohíbe cualquier transmisión para ese subdominio; útil para la seguridad, pero fatal si no es intencional.
Confusión con SPF/DKIM. CAA solo se refiere a certificados X.509, no al correo electrónico.
La cumbre: el candado verde no prueba que sea tu certificado
Este es el punto que eluden las listas de verificación “HTTPS habilitado”: la presencia de TLS no garantiza la unicidad del firmante. Supervise los registros de transparencia de certificados y combine alertas CAA + sobre emisiones inesperadas.
Decide y avanza sin puntos ciegos
- Inventario quién emite sus certificados hoy (origen, CDN, preparación).
- Publicar los registros CAA correspondientes,
issueyissuewildsi es necesario. - Pruebe una renovación ACME en funcionamiento en seco antes de bloquearla.
- Agregue una dirección
iodefa su equipo de seguridad o un alias monitoreado. - Documente el procedimiento de cambio de CA en su runbook.
Para comparar hosts que integran ACME o certificados gestionados, consulte nuestro directorio y el comparador. La guía DNSSEC completa este enfoque si protege toda la cadena DNS.
Preguntas frecuentes
¿Qué es exactamente un registro CAA?
Es un registro DNS (tipo CAA) que enumera las autoridades de certificación autorizadas para emitir certificados para un dominio o un comodín. Las CA serias lo consultan antes de firmar.
¿CAA reemplaza la renovación automática de Let's Encrypt?
No. Él lo enmarca. Si utiliza Let's Encrypt, agregue letsencrypt.org en sus registros CAA; de lo contrario, la renovación fallará en la próxima fecha límite.
¿Se requiere una CAA para cada subdominio?
No. Los solucionadores suben en la cadena DNS: una CAA en example.com se aplica a los subdominios a menos que exista una CAA más específica en el subdominio en cuestión.
¿Cómo comprobar que el CAA está activo?
Consulte el DNS con dig CAA example.com o una herramienta en línea, luego intente una transmisión de prueba desde una CA no listada; debería rechazarse.
La próxima vez que alguien te diga “el sitio está en HTTPS, es bueno”, pregunta también: ¿quién tiene derecho a firmar en este dominio?
