¿Por qué verificar DNSSEC?
DNSSEC (DNS Security Extensions) añade firmas criptográficas a las respuestas DNS. Sin estas firmas, un atacante puede falsificar respuestas y secuestrar tu tráfico. Es el ataque conocido como DNS cache poisoning, y es indetectable para el usuario final.
Un solo DS mal configurado basta para romper toda la cadena. Cuando eso ocurre, los resolvedores validantes devuelven SERVFAIL. Tu sitio funciona desde tu red, pero millones de usuarios no ven nada. Ningún monitor HTTP, ningún ping, ningún check de uptime detectará este problema. Solo un test DNSSEC específico lo revela.
Un DS huérfano tras una rotación de claves mal hecha. Una firma que expiró durante la noche. Estos fallos silenciosos persisten durante días hasta que alguien ejecuta una verificación.
Cuatro razones para verificar tu DNSSEC ahora:
- Seguridad: Solo una cadena de confianza intacta garantiza que los visitantes llegan a tus servidores, no a una copia del atacante.
- Disponibilidad: Una cadena rota bloquea más del 30 % de las consultas DNS mundiales. Google, Cloudflare y Quad9 rechazan la respuesta.
- Conformidad: Banca, gobierno, salud y e-commerce exigen cada vez más DNSSEC en todos los dominios.
- Detección proactiva: Identifica DS huérfanos, algoritmos obsoletos y firmas RRSIG a punto de expirar antes de que provoquen una interrupción.
Cómo usar el DNSSEC Checker en 3 pasos
Paso 1: Introduce tu dominio
Escribe el dominio a verificar: cloudflare.com, nic.fr o cualquier otro. La herramienta acepta dominios firmados y no firmados. Si DNSSEC no está activado, lo sabrás de inmediato.
Paso 2: Elige el modo de análisis
- Modo Simple (por defecto): Valida la cadena de confianza completa consultando un servidor autoritativo por zona. Resultado en 1 a 3 segundos.
- Modo Completo: Todo lo del modo Simple, más la coherencia DNSKEY entre todos los servidores autoritativos y la validación RRSIG en SOA, NS, A y MX. Resultado en 5 a 10 segundos.
Usa el modo Completo después de un key rollover, una migración DNS o para una auditoría de seguridad. En caso de duda, empieza con el modo Simple.
Paso 3: Analiza el informe y corrige
El informe clasifica cada hallazgo por severidad, zona por zona:
- Errores: Cadena rota, firmas inválidas, inconsistencia entre servidores. Bloquean la resolución.
- Advertencias: DS huérfanos, algoritmos débiles, RRSIG a punto de expirar. Requieren atención.
- Información: CSK detectada, NS fuera de bailiwick, número de DS en el padre. Útil, sin acción requerida.
¿Qué es la cadena de confianza DNSSEC?
La cadena de confianza DNSSEC funciona como un relevo de verificaciones criptográficas en cascada. Cada zona valida la siguiente, desde la raíz DNS hasta tu dominio:
Raíz (.)
|-- DS del TLD --> verifica la DNSKEY del TLD (KSK)
|-- La ZSK del TLD firma el DS de tu dominio
|-- DS de tu dominio --> verifica tu DNSKEY (KSK)
|-- Tu KSK firma el DNSKEY RRSet
|-- Tu ZSK firma los datos (A, MX, SOA, NS)
Los registros clave:
| Registro | Función | Dónde se publica |
|---|---|---|
| DS (Delegation Signer) | Hash de una DNSKEY hija, crea el enlace entre zonas | Zona padre |
| DNSKEY | Clave pública de la zona (KSK = flags 257, ZSK = flags 256) | Zona hija |
| RRSIG | Firma criptográfica de un conjunto de registros | Zona hija |
| NSEC/NSEC3 | Prueba autenticada de la inexistencia de un registro | Zona hija |
Cada eslabón depende del anterior. Un solo eslabón roto y toda la cadena se desmorona. Los resolvedores devuelven SERVFAIL para todo el dominio, no solo para la zona afectada.
¿Qué verifica exactamente la herramienta?
Modo Simple
| Elemento | Descripción | Resultado |
|---|---|---|
| DS Records | Registros DS publicados en el padre | Coincidencia con DNSKEY, huérfanos, digest débil |
| DNSKEY Records | Claves públicas de la zona (KSK/ZSK) | Presencia, algoritmo, asociación DS |
| RRSIG en DS | Firma del DS RRSet por la ZSK del padre | Validez criptográfica + ventana temporal |
| RRSIG en DNSKEY | Firma del DNSKEY RRSet por la KSK | Validez criptográfica + ventana temporal |
| Algoritmos | Tipo de algoritmo de firma | Detección de algoritmos obsoletos (RFC 8624) |
| Digests DS | Tipo de hash del DS | Detección de SHA-1 obsoleto |
Modo Completo (adicional)
| Elemento | Descripción | Resultado |
|---|---|---|
| Coherencia DNSKEY | Compara las DNSKEY en todos los servidores autoritativos | Detección de inconsistencias entre servidores |
| RRSIG en SOA | Firma del registro SOA | Validez + tiempo antes de la expiración |
| RRSIG en NS | Firma de los registros NS | Validez + tiempo antes de la expiración |
| RRSIG en A/MX | Firmas de los registros A y MX | Validez + tiempo antes de la expiración |
| Expiración RRSIG | Tiempo antes de la expiración de cada firma | Alerta si expira en menos de 7 días |
Diagnósticos comunes y soluciones
DS huérfano (DNSSEC_DS_ORPHAN)
Síntoma: Un registro DS existe en el padre sin DNSKEY correspondiente en tu zona.
Causa probable: Key rollover incompleto. La clave antigua fue eliminada antes de actualizar el DS en el registrar.
Acción: Elimina el DS huérfano en tu registrar o añade la DNSKEY correspondiente. Relanza el test para confirmar.
Algoritmo débil (DNSSEC_WEAK_ALGO)
Síntoma: Tu zona usa un algoritmo de firma prohibido o desaconsejado según la RFC 8624.
Algoritmos afectados: RSAMD5 (1), DSA (3), DSA-NSEC3-SHA1 (6) prohibidos. RSASHA1-NSEC3-SHA1 (7) desaconsejado.
Acción: Migra a ECDSAP256SHA256 (13) o ED25519 (15). Más seguridad, firmas 4x más compactas.
Digest SHA-1 (DNSSEC_WEAK_DIGEST)
Síntoma: Tu DS utiliza SHA-1 (tipo 1) como tipo de digest.
Acción: Añade un DS SHA-256 (tipo 2) en paralelo. Espera 48 h de propagación. Solo entonces elimina el DS SHA-1.
SERVFAIL después de activar DNSSEC
Síntoma: Tu dominio devuelve SERVFAIL para los resolvedores validantes después de activar DNSSEC.
Causas frecuentes:
- DS en el registrar que no corresponde a la DNSKEY de tu zona
- Firmas RRSIG no generadas o expiradas
- Servidores autoritativos que no sirven los registros DNSKEY
Acción: Lanza el test en modo Completo. Empieza verificando que el DS del registrar corresponde a tu DNSKEY KSK (mismo key tag, mismo algoritmo).
Inconsistencia DNSKEY entre servidores (DNSSEC_SERVER_INCONSISTENT)
Síntoma: Tus servidores autoritativos no sirven las mismas claves DNSKEY. Solo detectable en modo Completo.
Causa probable: Transferencia de zona incompleta entre primario y secundarios, o datos obsoletos en un servidor.
Acción: Verifica la replicación DNS. Fuerza un AXFR/IXFR si es necesario. Relanza el test tras unos minutos.
Verificar DNSSEC con dig (línea de comandos)
Para administradores que prefieren la terminal, dig permite verificar DNSSEC manualmente:
# Verificar los registros DS en el padre
dig DS captaindns.com +short
# Verificar las DNSKEY de la zona
dig DNSKEY captaindns.com +dnssec +short
# Verificar las RRSIG en un registro
dig A captaindns.com +dnssec
# Verificar la cadena completa con validación
dig captaindns.com +sigchase +trusted-key=./root.keys
Estos comandos requieren experiencia técnica y acceso a la terminal. El DNSSEC Checker automatiza todo el proceso con resultados visuales, sin línea de comandos.
DNSSEC por proveedor DNS
La activación depende de tu proveedor DNS y de tu registrar. Aquí los principales:
| Proveedor | DNSSEC | Activación | Algoritmo por defecto |
|---|---|---|---|
| Cloudflare | Automático | Un clic en el dashboard y luego añadir el DS en el registrar | ECDSAP256SHA256 (13) |
| OVH | Soportado | Activación desde el área de cliente o la API | Varía según la configuración |
| AWS Route 53 | Soportado | Desde la consola AWS, creación de KSK y luego DS en el registrar | ECDSAP256SHA256 (13) |
| Gandi | Automático | Activado por defecto si Gandi es registrar + proveedor DNS | ECDSAP256SHA256 (13) |
| Infomaniak | Soportado | Activación desde el manager | ECDSAP256SHA256 (13) |
Después de activar DNSSEC, verifica siempre la cadena con la herramienta de arriba. El error nº 1: un DS en el registrar que no corresponde a la DNSKEY generada por el proveedor.
Buenas prácticas DNSSEC
Algoritmo de firma: Usa ECDSAP256SHA256 (13) o ED25519 (15). ECDSA produce firmas 4x más compactas que RSA-2048. Evita RSA salvo por compatibilidad.
Digest DS: Publica un DS con SHA-256 (tipo 2). Añade SHA-384 (tipo 4) si tu registrar lo soporta. Nunca publiques SHA-1 como único digest.
Rotación de claves: Sigue la RFC 7583. Nunca elimines el DS antiguo antes de propagar y validar el nuevo. Lanza el DNSSEC Checker tras cada rotación para confirmar cero DS huérfanos.
Monitoreo: Verifica la cadena tras cada modificación DNS. Las firmas RRSIG tienen validez limitada. Si tu zona no se refirma antes de la expiración, los resolvedores devuelven SERVFAIL sin previo aviso.
Migración de proveedor: Confirma que el nuevo proveedor soporta DNSSEC con el mismo algoritmo. Durante la migración, ambos juegos de claves deben coexistir hasta que la propagación finalice.
Casos de uso concretos
Activación de DNSSEC en un nuevo registrar
Acabas de activar DNSSEC. Lanza el modo Simple de inmediato. Confirma que el DS del padre corresponde a tu DNSKEY. Un solo mismatch significa SERVFAIL para todos los resolvedores validantes.
Rotación de claves (key rollover)
Tras un key rollover, verifica la ausencia de DS huérfanos con el modo Simple. Un DS residual no rompe la resolución hoy, pero señala mantenimiento incompleto. Complicará tu próxima rotación.
Migración de proveedor DNS
¿Migrando a Cloudflare, Route 53 u otro proveedor? Lanza el modo Completo. Verifica tres cosas: los DS apuntan a las nuevas DNSKEY, las firmas son válidas en todos los servidores autoritativos, y las claves son coherentes en cada servidor.
Auditoría de seguridad
El modo Completo es tu informe de conformidad DNSSEC. Cubre la coherencia DNSKEY entre servidores, la validez de firmas en SOA, NS, A y MX, y los días restantes antes de la expiración de cada RRSIG.
Dominio que devuelve SERVFAIL
¿Usuarios reportan que tu sitio es inaccesible desde ciertas redes? Probablemente usan resolvedores validantes. Lanza el test de inmediato. Si la cadena está rota, la herramienta te muestra exactamente dónde.
Preguntas frecuentes
P: ¿Qué es DNSSEC y por qué activarlo?
R: DNSSEC añade firmas criptográficas a las respuestas DNS. Sin él, un atacante puede falsificar respuestas y redirigir tu tráfico (cache poisoning). Con DNSSEC, los resolvedores verifican la autenticidad.
P: ¿Cómo verificar si DNSSEC está activado en mi dominio?
R: Introduce tu dominio en la herramienta de arriba. Si muestra "DNSSEC no está activado", no hay DS publicado en el padre. Contacta con tu registrar para activarlo.
P: ¿Qué es un DS huérfano?
R: Un registro DS en el padre sin DNSKEY correspondiente en la zona hija. Suele resultar de una rotación de claves incompleta. No es bloqueante si existe otro DS válido, pero señala una configuración pendiente.
P: ¿Por qué mi dominio devuelve SERVFAIL después de activar DNSSEC?
R: La cadena de confianza está rota. Tres causas frecuentes: DS/DNSKEY no coinciden en el registrar, firmas RRSIG ausentes o expiradas, o servidores que no sirven las DNSKEY. Lanza el modo Completo para localizar el eslabón defectuoso.
P: ¿Cuál es la diferencia entre los modos Simple y Completo?
R: Simple verifica la cadena DS/DNSKEY/RRSIG en un servidor por zona (1-3 segundos). Completo añade coherencia multiservidores y validación RRSIG en SOA, NS, A, MX (5-10 segundos).
P: ¿Qué algoritmos DNSSEC se recomiendan?
R: ECDSAP256SHA256 (13) y ED25519 (15). Evita RSAMD5, DSA y RSASHA1-NSEC3-SHA1. La RFC 8624 los clasifica como débiles o prohibidos.
P: ¿DNSSEC ralentiza la resolución DNS?
R: Impacto insignificante con resolvedores modernos. Las respuestas son algo más voluminosas por las firmas, pero los resolvedores cachean los resultados validados igual que los no firmados.
Herramientas complementarias
| Herramienta | Utilidad |
|---|---|
| DNS Domain Check | Auditoría completa de la configuración DNS incluyendo una verificación DNSSEC básica |
| DNS Lookup | Consultar manualmente los registros DS, DNSKEY o RRSIG |
| DNS Propagation Test | Verificar la propagación de los cambios DNSSEC en todo el mundo |
| RDAP Lookup | Verificar el estado DNSSEC del dominio en el registrar |
Recursos útiles
- RFC 4033 - DNS Security Introduction: Introducción a las extensiones DNSSEC
- RFC 4034 - Resource Records for DNSSEC: Especificación de los registros DS, DNSKEY, RRSIG, NSEC
- RFC 8624 - Algorithm Implementation Requirements: Requisitos sobre los algoritmos DNSSEC
- RFC 7583 - DNSSEC Key Rollover Timing: Guía para la rotación de claves
- Verisign DNSSEC Debugger: Herramienta de referencia para el debug DNSSEC
- DNSViz: Visualización avanzada de la cadena DNSSEC