SPF, DKIM, DMARC: perché le email del sito finiscono in spam
Data Pubblicazione: 14/09/2026 | | Sicurezza

SPF, DKIM, DMARC: perché le email del sito finiscono in spam

SPF, DKIM e DMARC non sono tre plugin. Sono tre record DNS. Gmail, dal 2024, li pretende. Un form che «non arriva» di solito non è il form: è un TXT mancante, o due TXT di troppo.

Un form del sito che manda «grazie per l’ordine» in spam non è un problema di copy. È un problema di DNS. Il destinatario — Gmail in testa, dal 1° febbraio 2024 con regole scritte — chiede di sapere se quel messaggio è uscito davvero dal dominio che sta nel From. SPF, DKIM e DMARC sono tre risposte diverse. Non sono tre plugin. Non si «installano nel CMS». Si pubblicano come record, si allineano al From, si verificano.

In breve: SPF autorizza gli IP che possono spedire per il dominio. DKIM firma il messaggio con una chiave nel DNS. DMARC dice al ricevente cosa fare se i due controlli falliscono, e chiede che il dominio del From sia allineato a uno dei due. Google, per la posta verso account @gmail.com / @googlemail.com, pretende SPF o DKIM da tutti; sopra le 5.000 mail al giorno verso Gmail pretende SPF e DKIM e DMARC (la policy può restare a none). Senza, i messaggi finiscono in spam o non arrivano. Questo pezzo distingue i tre record, l’allineamento, e cosa non risolvono.

Cosa trovi in questo articolo

  1. Tre record, tre mestieri

  2. Cosa chiede Gmail (e perché conta anche se non sei Google)

  3. Allineamento: il From deve coincidere

  4. p=none, quarantine, reject

  5. Errori da evitare

  6. In sintesi

Tre record, tre mestieri

Il DNS del dominio non serve solo a far risolvere il sito. Serve anche a dire ai server di posta chi è autorizzato a parlare in nome tuo. La mappa DNS/hosting/CDN sta in un altro pezzo, DNS, hosting, CDN; qui conta solo la zona che pubblica i record di posta.

SPF (RFC 7208)DKIM (RFC 6376)DMARC (RFC 9989, obsoleta RFC 7489)
Cosa faElenca gli IP / include i mittenti autorizzati a usare il dominio nell’envelopeFirma testata e corpo con una chiave pubblica nel DNSPubblica una policy su cosa fare se SPF/DKIM falliscono, e chiede report
Dove viveRecord TXT su dominio.tld (un solo SPF)Record TXT su selettore._domainkey.dominio.tldRecord TXT su _dmarc.dominio.tld
Cosa non faNon sopravvive al forwarding (l’IP cambia). Non autentica il From visibile da soloNon basta se si firma un dominio diverso da quello del FromNon spedisce. Non sostituisce i due controlli: li usa
Fallisce seMancano gli include (ESP, CRM, ticket, fatture), o ci sono due record SPFIl corpo viene riscritto in transito, o la chiave non è pubblicataFrom e dominio autenticato non sono allineati, anche con SPF/DKIM «verdi»

SPF risponde alla domanda: questo IP poteva usare il dominio come mittente di envelope? DKIM risponde: questo messaggio è uscito con una chiave che il dominio dichiara? DMARC risponde: se la risposta è no, cosa deve fare il ricevente, e il From visibile è dello stesso dominio (o di un suo organizzativo) di uno dei due?

Tre domande. Tre record. Un plugin «anti-spam» nel sito non ne pubblica nessuno. Li pubblica chi gestisce la zona DNS: registrar, hosting, o il DNS del certificato e del transito, che è un altro strato. Il TLS cifra il salto (Gmail lo pretende in transito). L’autenticazione dice chi sei. Non sono sinonimi.

Cosa chiede Gmail (e perché conta anche se non sei Google)

Le Email sender guidelines di Google, in vigore dal 1° febbraio 2024 verso gli account personali Gmail, non sono un RFC. Sono la soglia pratica del destinatario più usato. Vale la pena leggerle come vincolo di consegna, non come legge.

Per tutti i mittenti verso @gmail.com / @googlemail.com:

  • SPF oppure DKIM sul dominio che spedisce;

  • DNS diretto e inverso (PTR) validi sugli IP;

  • transito su TLS;

  • tasso di spam in Postmaster Tools sotto lo 0,3%;

  • messaggi conformi a RFC 5322; niente From che impersonano Gmail.

Sopra le 5.000 mail al giorno verso Gmail, la lista si allunga: SPF e DKIM, più DMARC (la policy può essere p=none), allineamento del From con SPF o DKIM, unsubscribe a un clic sulle mail di marketing. Chi non c’è, scrive Google, rischia rate limit, spam o mancata consegna.

Non serve essere un ESP da 5.000 messaggi. Un e-commerce che manda ordine, spedizione e reset password accumula volume. Un form «contattaci» che esce da un IP di condiviso, senza SPF, è già fuori dalla prima riga. Il monitoring del sito misura i 5xx; la posta ha un altro cruscotto. I log applicativi dicono se il form ha accettato il messaggio. Non dicono se Gmail l’ha messo in Promozioni, o in Spam, o in /dev/null.

Allineamento: il From deve coincidere

Il punto che si salta più spesso: SPF e DKIM possono essere «pass» e DMARC comunque fallire. DMARC chiede identifier alignment: il dominio nel From (RFC 5322) deve allinearsi al dominio autenticato da SPF o da DKIM, in modalità relaxed (stesso dominio organizzativo) o strict (stesso dominio esatto), secondo quanto pubblicato nel record.

Esempi, tutti visti in produzione:

  • Il sito spedisce da noreply@negozio.it, ma l’ESP firma DKIM con sendgrid.net e lo SPF è su un altro hostname. Gmail vede un From non allineato. DMARC: fail.

  • Due record SPF sullo stesso nome. Molti ricevitori trattano la situazione come permerror. Non è «più autorizzati»: è rotto.

  • Il modulo del CMS usa l’IP del webserver, che non è nell’SPF. Il messaggio parte. Arriva in spam, o non arriva.

  • Si inoltra la posta del form a una casella Gmail personale. SPF sul salto successivo fallisce (l’IP è quello dell’inoltro). Senza DKIM integro, DMARC non ha un’àncora.

La mossa corretta è una sola catena: un From del proprio dominio, SPF che include tutti i mittenti veri (transazionale, newsletter, ticket, fatture elettroniche se escono da quel From), DKIM con selettore proprio, DMARC che parte da p=none con un indirizzo rua dove arrivano i report. Si leggono i report. Poi si stringe. Non il contrario.

p=none, quarantine, reject

DMARC, nel record _dmarc, pubblica una policy. RFC 9989 (che sostituisce RFC 7489) resta il testo di riferimento; in pratica le tre parole che si vedono in zona sono queste:

PolicyCosa chiede al riceventeQuando ha senso
p=noneNessuna azione speciale; manda i reportAll’inizio. Gmail la accetta anche sopra le 5.000/giorno
p=quarantineTratta i fail come sospetti (di solito spam)Quando i report dicono che i mittenti legittimi passano
p=rejectRifiuta i failQuando si è sicuri di aver mappato ESP, CRM, fatture, ticket

reject il primo giorno è un modo elegante per perdere le fatture. none per sempre è un modo elegante per far firmare altri a nome tuo: il ricevente non ha istruzioni. Si parte da none, si tengono i report (e i monitoraggi a parte: la posta non è l’uptime HTTP), si sale.

Un CMS, un SaaS o un hosting «gestito» che non espone SPF/DKIM/DMARC sul dominio del cliente sta spostando il problema. Si sceglie chi pubblica i record, o si cambia prodotto. Non si compra un plugin anti-spam. Keidea costruisce siti: se il perimetro include form, transazionali e un dominio proprio, questi tre record stanno nel go-live, non in coda. La relazione è dichiarata. Il pezzo resta in piedi senza quel nome: Gmail non chiede il fornitore, chiede i TXT.

Errori da evitare

  • Due record SPF sullo stesso hostname. Se ne pubblica uno, con tutti gli include.

  • Firmare DKIM sul dominio dell’ESP e lasciare il From sul dominio del sito, senza allineamento.

  • Mettere p=reject prima di aver letto una settimana di report.

  • Credere che un plugin WordPress «SMTP» pubblichi i TXT. Pubblica, al massimo, la coda in uscita.

  • Usare un From @gmail.com dal sito. Google lo tratta come impersonazione.

  • Confondere TLS del transito e autenticazione del dominio. Servono entrambi.

In sintesi

SPF elenca chi può spedire. DKIM firma. DMARC allinea il From e dice cosa fare se i controlli falliscono. Gmail, dal 2024, li pretende in forma minima da tutti e in forma completa dai mittenti grandi. Si pubblicano nel DNS, si include ogni ESP vero, si parte da p=none, si leggono i report, si stringe. Il form del sito che «non arriva» di solito non è il form. È un TXT mancante, o due TXT di troppo.

Fonti

Immagine di copertina: portatile su una scrivania. Foto Unsplash via Wikimedia Commons, licenza CC0.

Relazione: Keidea s.r.l. è parte correlata di questa testata. Il riferimento nel testo è un esempio di perimetro di lavoro (siti e transazionali), non un servizio di deliverability.

Questo contenuto è stato realizzato con il supporto di sistemi di intelligenza artificiale e successivamente verificato secondo le linee editoriali della redazione.

Domande Frequenti

SPF elenca gli IP autorizzati a spedire per il dominio (RFC 7208). DKIM firma il messaggio con una chiave pubblicata nel DNS (RFC 6376). DMARC dice al ricevente cosa fare se quei controlli falliscono e chiede che il From sia allineato a SPF o DKIM (RFC 9989). Non si sostituiscono: si usano insieme.
Dal 1° febbraio 2024, verso gli account personali @gmail.com / @googlemail.com, Google chiede SPF oppure DKIM a tutti i mittenti. Chi invia più di 5.000 messaggi al giorno verso Gmail deve avere SPF e DKIM e DMARC (la policy può restare p=none), più allineamento del From e unsubscribe a un clic sulle mail di marketing.
No. Un plugin SMTP, al massimo, consegna il messaggio a un server in uscita. SPF, DKIM e DMARC si pubblicano come record TXT nella zona DNS del dominio. Due record SPF sullo stesso nome, o un From non allineato alla firma, fanno fallire i controlli anche con l'SMTP 'ok'.
p=none, con un indirizzo rua per i report. Gmail la accetta anche sopra le 5.000 mail al giorno. Si leggono i report, si mappano ESP, CRM, fatture e ticket, poi si sale a quarantine o reject. p=reject il primo giorno è un modo per perdere i messaggi legittimi.
DMARC richiede l'allineamento: il dominio nel From deve coincidere, in relaxed o strict, con il dominio autenticato da SPF o DKIM. Firmare con il dominio dell'ESP e lasciare il From sul dominio del sito, senza allineamento, è un fail. Anche due record SPF producono permerror presso molti ricevitori.

Potrebbe interessarti anche...