Hai un dominio, magari per lo studio o per la piccola azienda, e alcune email arrivano nello spam dei clienti o tornano indietro con un errore che parla di «authentication». Il motivo, nella grande maggioranza dei casi, è uno dei tre record DNS che dicono al mondo chi può spedire a nome tuo: SPF, DKIM e DMARC. Dal febbraio 2024 Gmail li richiede in modo esplicito, come spiegano le sue linee guida per i mittenti. In questo articolo vediamo come leggerli, come capire cosa non va e come correggerli senza bloccare la tua stessa posta.
Cosa fa ciascun record
| Record | Dove si trova | Cosa dice | Cosa controlla il destinatario |
|---|---|---|---|
| SPF | TXT sul dominio, per esempio esempio.it |
Quali server possono spedire per quel dominio | L’indirizzo IP del server che consegna il messaggio |
| DKIM | TXT su selettore._domainkey.esempio.it |
La chiave pubblica con cui verificare la firma | Che il messaggio non sia stato alterato e sia firmato dal dominio |
| DMARC | TXT su _dmarc.esempio.it |
Cosa fare se SPF e DKIM non tornano, e dove mandare i report | Che almeno uno dei due superi il controllo e sia allineato al dominio del mittente visibile |
Il concetto chiave è l’allineamento. Non basta che SPF o DKIM superino il controllo: il dominio verificato deve coincidere con quello che il destinatario vede nel campo «Da:». Una newsletter inviata da un servizio esterno può superare SPF con il dominio del servizio, ma fallire DMARC perché quel dominio non è il tuo.
Cosa chiede Gmail
- Tutti i mittenti: SPF oppure DKIM, record DNS diretto e inverso (PTR) validi per i server di invio, connessione TLS, tasso di spam segnalato sotto lo 0,3%.
- Chi invia più di 5.000 messaggi al giorno a Gmail: SPF e DKIM, un record DMARC pubblicato (anche solo con
p=none), allineamento del dominio «Da:», disiscrizione con un clic per i messaggi promozionali. - Le chiavi DKIM devono essere di almeno 1024 bit; Google consiglia 2048 bit.
Anche se mandi poche email, conviene rispettare i requisiti più severi: sono quelli che decidono se finisci in Posta in arrivo o nello spam anche presso gli altri provider.
Come leggere i record dal tuo PC
Su Windows apri il Prompt dei comandi, su Mac e Linux il Terminale. Sostituisci esempio.it con il tuo dominio.
| Cosa | Windows | Mac e Linux |
|---|---|---|
| SPF | nslookup -type=txt esempio.it |
dig +short TXT esempio.it |
| DMARC | nslookup -type=txt _dmarc.esempio.it |
dig +short TXT _dmarc.esempio.it |
| DKIM | nslookup -type=txt selettore._domainkey.esempio.it |
dig +short TXT selettore._domainkey.esempio.it |
| MX | nslookup -type=mx esempio.it |
dig +short MX esempio.it |
Il selettore DKIM non si indovina: lo trovi nel pannello del tuo provider di posta o nell’intestazione di un messaggio che hai inviato, nel campo DKIM-Signature, alla voce s=. Per vedere i record di posta e i server del dominio senza usare la riga di comando puoi usare anche la nostra diagnostica DNS e posta, che mostra i valori osservati davvero e la fonte di ogni dato.
Come leggere un record SPF
Un esempio tipico: v=spf1 include:_spf.google.com include:spf.provider-newsletter.com ip4:203.0.113.10 -all
include:autorizza i server di un altro servizio (il provider di posta, la piattaforma per le newsletter, il gestionale che manda le fatture).ip4:eip6:autorizzano indirizzi precisi, per esempio il server del sito.mxeaautorizzano i server indicati nei record MX e A del dominio.- Alla fine:
-allrifiuta tutto il resto,~alllo segna come sospetto.+allautorizza chiunque: non usarlo mai.
Due regole dello standard (RFC 7208) causano la maggior parte dei problemi: ci deve essere un solo record SPF per dominio, e la valutazione non può richiedere più di 10 interrogazioni DNS (ogni include, a, mx conta, compresi quelli annidati dentro gli include). Superato il limite, il risultato è un errore permanente e SPF fallisce per tutti.
Come leggere un record DMARC
Esempio: v=DMARC1; p=quarantine; rua=mailto:dmarc@esempio.it; adkim=r; aspf=r; pct=100
| Campo | Significato | Valori |
|---|---|---|
p |
Cosa fare dei messaggi che falliscono | none (solo report), quarantine (spam), reject (rifiuto) |
rua |
Dove ricevere i report aggregati giornalieri | Una casella dedicata |
adkim, aspf |
Allineamento rilassato o stretto | r accetta i sottodomini, s richiede lo stesso dominio esatto |
sp |
Politica per i sottodomini | Se manca, vale quella di p |
Gli errori più comuni
- Due record SPF: succede quando si aggiunge un servizio creando un nuovo record invece di unire gli
includein quello esistente. - Troppi include: oltre 10 interrogazioni DNS. Elimina i servizi che non usi più e sostituisci, dove possibile, gli include con gli indirizzi
ip4del tuo server. - Il sito che invia email non autorizzato: moduli di contatto, ordini e notifiche partono dal server del sito. O lo autorizzi in SPF, o meglio fai passare la posta del sito da un servizio SMTP con DKIM sul tuo dominio.
- DKIM non attivato sul provider: molti lo offrono ma lo lasciano spento finché non pubblichi il record CNAME o TXT indicato nel pannello.
- DMARC messo subito a
rejectsenza leggere i report: le email legittime inviate da un servizio dimenticato vengono rifiutate. - Record con caratteri sbagliati: virgolette tipografiche, spazi in più, record DKIM spezzato male in più stringhe dal pannello del registrar.
Il percorso sicuro verso p=reject
| Fase | Record DMARC | Durata | Cosa fare |
|---|---|---|---|
| 1. Osservazione | p=none; rua=mailto:... |
2–4 settimane | Leggi i report: quali servizi spediscono per il tuo dominio, quali falliscono |
| 2. Correzione | p=none |
Finché serve | Autorizza in SPF o attiva DKIM su ogni servizio legittimo |
| 3. Quarantena | p=quarantine |
2–4 settimane | Controlla che nessuna email legittima finisca nello spam |
| 4. Rifiuto | p=reject |
Stabile | Chi falsifica il tuo dominio viene respinto |
I report aggregati sono file XML compressi: per leggerli senza impazzire esistono servizi gratuiti di analisi, oppure strumenti open source da installare sul proprio server. Usa una casella dedicata, perché ne arriveranno decine al giorno.
Verifica finale: manda un’email a te stesso
Invia un messaggio dal tuo dominio a un indirizzo Gmail, aprilo e scegli Altro > Mostra originale. In alto Gmail mostra il risultato di SPF, DKIM e DMARC: devono essere tutti e tre PASS. Ripeti la prova da ogni servizio che invia per tuo conto: il sito, il gestionale, la piattaforma delle newsletter.
Lista di controllo
- Un solo record SPF, con tutti i servizi che inviano davvero e meno di 10 interrogazioni DNS.
- DKIM attivo su ogni servizio, con chiave da 2048 bit dove possibile.
- DMARC pubblicato, con una casella per i report.
- Passaggio graduale da
p=noneap=reject. - Se il dominio non invia mai email, proteggilo comunque:
v=spf1 -allev=DMARC1; p=reject.
Fonti
- Google, Linee guida per i mittenti di email.
- IETF, RFC 7208 (SPF), RFC 6376 (DKIM), RFC 7489 (DMARC).
