Cos'è DNSSEC? Una guida chiara alla sicurezza DNS
DNSSEC spiegato dai principi: cos'è, perché esiste, come funziona ad alto livello e quando attivarlo per il tuo dominio.
TL;DR
DNSSEC (DNS Security Extensions) firma crittograficamente i tuoi record DNS in modo che i resolver possano verificare che le risposte non siano state manomesse in transito o in una cache. Non cifra nulla e non cambia il contenuto dei record — aggiunge un sigillo digitale. Ogni dominio pubblico dovrebbe averlo attivato; è l'unica difesa contro gli attacchi di avvelenamento della cache DNS. La maggior parte dei fornitori DNS gestiti attiva DNSSEC con un clic; l'unica parte difficile è pubblicare il record DS presso il tuo registrar.
What you'll learn
- Definire DNSSEC in linguaggio chiaro e distinguerlo dal DNS cifrato (DoH/DoT)
- Comprendere il problema dell'avvelenamento della cache che DNSSEC è stato progettato per risolvere
- Riconoscere la catena di fiducia ad alto livello senza entrare nella meccanica KSK/ZSK
- Decidere quando attivare DNSSEC e cosa cercare in un fornitore DNS
DNSSEC — abbreviazione di DNS Security Extensions — è l'unica difesa ampiamente implementata contro l'avvelenamento della cache DNS, l'attacco che permette a un avversario di rete di mentire ai resolver su dove punta il tuo dominio. È uno standard dal 2005, ogni grande TLD firma ora la sua zona, e ogni grande fornitore DNS gestito lo supporta. Se DNSSEC non è attivato sul tuo dominio pubblico, stai confidando che nessuno tra i tuoi utenti e il tuo server di nomi autoritativo abbia i mezzi o la motivazione per reindirizzarli a un luogo malevolo. È una scommessa che non è più ragionevole.
Questa guida è il punto d'ingresso in linguaggio chiaro: cosa fa realmente DNSSEC, perché esiste, come funziona la catena di fiducia ad alto livello, e cosa aspettarti dal tuo fornitore DNS. Per la meccanica operativa — ruoli KSK vs ZSK, rotazioni di chiavi, scelte di algoritmi — leggi la guida più approfondita Gestione delle chiavi DNSSEC una volta che hai le basi.
Cosa fa DNSSEC (e cosa non fa)
DNSSEC aggiunge firme digitali ai record DNS. Quando il tuo server autoritativo restituisce un record A che dice che example.com si trova a 192.0.2.1, restituisce anche una firma crittografica su quel record. Un resolver che supporta la validazione DNSSEC può controllare la firma rispetto alla chiave pubblica della tua zona — e controllare quella chiave pubblica rispetto a una catena che porta fino a un'ancora di fiducia codificata — e rifiutare di accettare la risposta se le firme non sono valide.
Questo è tutto il suo lavoro. DNSSEC:
- ✅ Dimostra che la risposta proviene dal server autoritativo corretto. Un attaccante man-in-the-middle non può falsificare un record senza rompere la firma.
- ✅ Rileva la manomissione sul cavo o in una cache. Anche se la cache di un resolver è avvelenata, le firme non validano.
- ✅ Dimostra che un record non esiste (anche le risposte negative sono firmate, tramite record NSEC/NSEC3).
DNSSEC non:
- ❌ Cifra le query o le risposte DNS. Chiunque osservi la rete può ancora vedere cosa stai cercando. Usa DNS over HTTPS o DNS over TLS per quello.
- ❌ Nasconde la struttura della tua zona. Le firme DNSSEC sono pubbliche; chiunque può recuperarle.
- ❌ Sostituisce TLS o HTTPS. DNSSEC protegge il DNS stesso; una volta che hai un indirizzo IP, la sicurezza della connessione spetta al protocollo dell'applicazione.
- ❌ Difende contro server autoritativi compromessi. Se un attaccante controlla il tuo server di nomi, può firmare ciò che vuole con le chiavi private della tua zona. DNSSEC si fida del titolare della chiave.
Perché esiste DNSSEC — Il problema dell'avvelenamento della cache
Il protocollo DNS originale degli anni '80 fu progettato per una rete dove nessuno cercava attivamente di imbrogliare. I resolver chiedevano ai server autoritativi risposte in UDP in chiaro e si fidavano di qualsiasi cosa tornasse purché l'IP di origine e un identificatore di transazione a 16 bit corrispondessero.
Quel modello di fiducia ha tenuto fino al 2008, quando Dan Kaminsky dimostrò l'avvelenamento della cache pratico su larga scala. L'attacco funziona così:
- L'attaccante induce un resolver ricorsivo a cercare un nome che controlla (
anything.example.com). - Mentre il resolver attende una risposta dal server autoritativo, l'attaccante lo inonda di risposte falsificate indovinando l'ID di transazione a 16 bit.
- Se una risposta falsificata vince la corsa, il resolver memorizza nella cache la risposta dell'attaccante — un falso record A per
example.com— e la serve a ogni query successiva per l'intero TTL.
Ogni utente di quel resolver — potenzialmente milioni di persone — è ora silenziosamente reindirizzato dove l'attaccante ha scelto. Traffico web, email, aggiornamenti software: tutto instradato al server dell'attaccante fino a quando la voce di cache errata scade.
La community DNS ha risposto con tre livelli di mitigazione:
- Randomizzazione della porta sorgente ai resolver (RFC 5452, 2009) — ha reso la corsa molto più difficile aggiungendo 16 bit in più di imprevedibilità.
- DNS over HTTPS / DNS over TLS sull'hop resolver-to-client — ha cifrato la conversazione in modo che un attaccante sulla rete locale non possa né vedere né alterare le query.
- DNSSEC sull'hop autoritativo-to-resolver — ha aggiunto firme crittografiche in modo che una cache avvelenata produca firme non valide che un resolver validante rifiuta.
DNSSEC è l'unico dei tre che effettivamente risolve il problema sottostante a livello autoritativo. La randomizzazione della porta sorgente rende l'attacco più difficile; DoH/DoT cambia chi può vedere la query ma non chi può mentire sulla risposta. DNSSEC verifica la risposta stessa.
La catena di fiducia — Una vista ad alto livello
Ciò che fa funzionare DNSSEC su scala Internet è che i resolver non hanno bisogno di conoscere in anticipo la tua chiave pubblica specifica. Invece, percorrono una catena di fiducia da una chiave radice codificata fino alla tua zona:
Zona radice (.)
│ firma con KSK radice
│ pubblica record DS per .com nella radice
▼
TLD .com
│ firma con KSK .com
│ pubblica record DS per example.com in .com
▼
example.com
│ firma tutti i record con le proprie chiavi
│ firma sul record richiesto
▼
Record A: example.com → 192.0.2.1Un resolver validante segue questa catena al contrario:
- Riceve il record A firmato dal tuo server autoritativo.
- Recupera il record DS per
example.comdai server di nomi.come controlla che l'hash corrisponda alla KSK della tua zona. - Recupera il record DS per
.comdai server radice e controlla l'hash rispetto alla KSK della zona.com. - Controlla la firma della zona radice rispetto all'ancora di fiducia codificata (la KSK radice, anche pubblicata da IANA su https://data.iana.org/root-anchors/).
Se qualsiasi anello della catena non riesce a verificare, la risposta viene trattata come non affidabile. La maggior parte dei resolver validanti restituirà SERVFAIL piuttosto che servire una risposta potenzialmente manomessa.
Non è necessario comprendere la meccanica per usare DNSSEC. Il tuo fornitore DNS genera e ruota le chiavi per te; il tuo unico compito è pubblicare un pezzo — il record DS — presso il tuo registrar in modo che la catena raggiunga la tua zona.
Per la suddivisione meccanica completa — ruoli KSK vs ZSK, record RRSIG, NSEC/NSEC3 per la negazione autenticata — vedi Come funziona DNSSEC.
Come capire se un dominio ha DNSSEC
Esegui dig con il flag +dnssec contro un resolver validante:
dig +dnssec example.com @1.1.1.1Cerca due cose:
- Record RRSIG nella sezione risposta, abbinati a ciascun set di record interrogato. Quelle sono le firme.
- Il flag AD (Authenticated Data) nell'intestazione della risposta, che indica che il resolver ha validato con successo la catena.
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
^^
│
flag AD impostato = validazione riuscita
;; ANSWER SECTION:
example.com. 300 IN A 192.0.2.1
example.com. 300 IN RRSIG A 13 2 300 20260601000000 ...
^^
│
record di firmaSe vedi gli RRSIG ma nessun flag AD, il resolver non sta validando — prova 1.1.1.1 o 9.9.9.9, entrambi validano per impostazione predefinita. Se non vedi RRSIG, la zona non è firmata.
Per la visualizzazione, DNSViz e il DNSSEC Debugger di Verisign disegnano la catena di fiducia completa ed evidenziano qualsiasi rottura.
Quando attivare DNSSEC
In breve: sempre, per qualsiasi dominio pubblico.
Casi specifici dove è particolarmente importante:
- Servizi ad alta fiducia — banche, e-commerce, fornitori di identità, governo — dove un attacco di avvelenamento della cache riuscito ha conseguenze dirette.
- Email — DNSSEC è prerequisito per DANE/TLSA, che protegge il TLS SMTP contro gli attacchi di downgrade. MTA-STS è un'alternativa parziale per le organizzazioni non ancora pronte per DANE.
- Soggetti UE regolati ai sensi di NIS2 — l'Articolo 21(2)(h) richiede "politiche e procedure sull'uso della crittografia". Un fornitore DNS che non offre DNSSEC, o un deployment che non l'ha attivato, rischia di essere giudicato non conforme. Vedi la guida NIS2 e DNS per la mappatura completa.
- Ambienti guidati dalla conformità — PCI DSS, HIPAA, ISO 27001 e vari framework nazionali elencano DNSSEC come controllo raccomandato o atteso.
Essenzialmente non ci sono situazioni in cui DNSSEC sia una cattiva idea per una zona pubblica. Le obiezioni storiche — complessità operativa, rischio di gestione delle chiavi, compatibilità del resolver — sono in gran parte risolte dai fornitori DNS gestiti che gestiscono automaticamente generazione, rotazione e pubblicazione DS.
Cosa cercare in un fornitore DNS abilitato DNSSEC
Quando valuti il supporto DNSSEC di un fornitore DNS, chiedi:
| Capacità | Cosa significa |
|---|---|
| Attivazione con un clic | Attivi DNSSEC; il fornitore genera le chiavi e firma la zona. Nessuna gestione manuale delle chiavi. |
| Algoritmi moderni | ECDSA P-256 (algoritmo 13) o Ed25519 (algoritmo 15). Evita i fornitori che offrono solo RSA-SHA1. |
| Memorizzazione delle chiavi basata su HSM | Le chiavi private sono memorizzate in un modulo di sicurezza hardware, non su disco. Importante per zone ad alta fiducia. |
| Rotazioni automatizzate | Le chiavi vengono ruotate secondo un programma senza azione manuale del cliente. |
| Reporting del record DS via API | Il tuo registrar può recuperare il DS automaticamente, eliminando una grande fonte di rotture. |
| Supporto rotazione algoritmo | Il fornitore può farti passare da RSA a ECDSA senza downtime dei dati di zona. |
| Capacità multi-firmatario (RFC 8901) | Se gestisci DNS multi-provider, il fornitore supporta il modello multi-firmatario di RFC 8901 in modo che DNSSEC continui a funzionare tra i due fornitori. |
Attivare DNSSEC su DNScale
DNScale attiva DNSSEC con un clic per zona:
- Dalla dashboard, apri la zona.
- Clicca su Attiva DNSSEC. DNScale genera una CSK (Combined Signing Key) usando ECDSA P-256.
- Copia il record DS visualizzato presso il tuo registrar. Alcuni registrar lo accettano direttamente; alcuni via API; alcuni richiedono ancora inserimento manuale.
- Attendi 24–48 ore affinché il DS si propaghi al TLD.
- Verifica con
dig +dnssec tuodominio @1.1.1.1e conferma il flag AD.
La rotazione delle chiavi, il refresh delle firme e la sincronizzazione con la zona padre avvengono automaticamente. Gli aggiornamenti degli algoritmi sono roll coordinati che DNScale esegue senza downtime visibile al cliente.
Per il passo-passo completo incluse le istruzioni specifiche per registrar, vedi Guida all'installazione DNSSEC per DNScale. Per la meccanica sottostante, vedi Come funziona DNSSEC e Gestione delle chiavi DNSSEC.
Riferimenti
- RFC 4033 — Introduzione e requisiti DNS Security
- RFC 4034 — Resource Records per le DNS Security Extensions
- RFC 4035 — Modifiche al protocollo per le DNS Security Extensions
- RFC 5155 — DNS Security (DNSSEC) Hashed Authenticated Denial of Existence (NSEC3)
- RFC 6781 — DNSSEC Operational Practices, Version 2
- RFC 8901 — Modelli DNSSEC multi-firmatario
- Ancore di fiducia radice IANA
- DNSViz — visualizzatore per catene di fiducia DNSSEC
- DNSSEC Debugger di Verisign
Letture correlate
- Come funziona DNSSEC — meccanica KSK/ZSK/DS/DNSKEY
- Gestione delle chiavi DNSSEC — procedure operative di rotazione
- Guida all'installazione DNSSEC per DNScale — passo-passo del prodotto
- DNSSEC vs DNS over HTTPS — integrità vs privacy
- NIS2 e conformità DNS — mappatura normativa
- Avvelenamento della cache DNS — l'attacco che DNSSEC sconfigge
Frequently asked questions
- DNSSEC è la stessa cosa di DNS over HTTPS?
- No — risolvono problemi diversi. DNSSEC dimostra che la risposta non è stata manomessa (integrità); DoH cifra la conversazione tra te e il tuo resolver (privacy). Entrambi sono preziosi e complementari. Vedi la guida DNSSEC vs DNS over HTTPS per il confronto completo.
- Ho bisogno di DNSSEC per un piccolo sito web?
- Sì. L'avvelenamento della cache è un attacco generico — la dimensione del tuo dominio non ti protegge. DNSSEC ha un costo operativo quasi nullo quando il tuo fornitore DNS gestisce le chiavi per te, e migliora visibilmente la tua postura di sicurezza per conformità, clienti e integratori. Non c'è una buona ragione per lasciarlo disattivato nel 2026.
- DNSSEC rallenterà il mio sito web?
- Marginalmente. DNSSEC aggiunge alcune query DNS extra (DNSKEY, DS) e pacchetti di risposta leggermente più grandi. Per la risoluzione iniziale a cache fredda, sono pochi millisecondi. Le query successive sono memorizzate nella cache del resolver e non sono più lente del DNS regolare. L'impatto reale sulle prestazioni web non è misurabile per la maggior parte degli utenti.
- Cosa c'entra il record DS con DNSSEC?
- Il record DS (Delegation Signer) è ciò che collega le chiavi DNSSEC della tua zona alla zona padre (es. .com). Generi le chiavi presso il tuo fornitore DNS, poi pubblichi un hash di una di quelle chiavi come record DS presso il tuo registrar. Quel record DS rende completa la catena di fiducia — senza di esso, i resolver vedono le tue chiavi DNSSEC ma non hanno motivo di fidarsi.
- DNSSEC può rompere il mio dominio?
- Solo se è configurato male. Le rotture più comuni sono: DS obsoleto presso il registrar dopo una rotazione di chiavi, rimozione di chiavi prima che le vecchie firme scadano dalle cache, o un server autoritativo che restituisce record non firmati quando DNSSEC dovrebbe essere attivo. I fornitori DNS gestiti gestiscono automaticamente le parti pericolose. L'unica cosa che devi fare correttamente è il record DS presso il tuo registrar.
- Come faccio a sapere se un dominio ha DNSSEC abilitato?
- Esegui dig +dnssec example.com. Se vedi record RRSIG nella risposta e il flag AD (Authenticated Data) è impostato quando interroghi un resolver validante come 1.1.1.1, il dominio è firmato DNSSEC e la validazione funziona. Ci sono anche strumenti web come DNSViz e il DNSSEC Debugger di Verisign che visualizzano la catena di fiducia.
Related guides
Come funziona DNSSEC — KSK, ZSK, DS, DNSKEY, RRSIG, NSEC spiegati
Una panoramica della catena di fiducia DNSSEC: come le chiavi di firma KSK e ZSK, i record DS, i record DNSKEY, le firme RRSIG e NSEC/NSEC3 lavorano insieme per autenticare le risposte DNS.
Guida all'installazione DNSSEC per DNScale — Passo-passo
Attiva DNSSEC su una zona DNScale in meno di 10 minuti — generare chiavi, copiare il DS al registrar, verificare ed evitare gli errori di rotazione più comuni.
NIS2 e DNS — Cosa devono sapere gli operatori UE regolamentati
Come la Direttiva NIS2 (UE 2022/2555) si applica al DNS — obblighi del fornitore, misure di gestione del rischio, notifica degli incidenti e cosa richiedere al proprio fornitore DNS.
Ready to manage your DNS with confidence?
DNScale provides anycast DNS hosting with a global network, real-time analytics, and an easy-to-use API.
Start free