Come si scrive un record SPF

Un record SPF è un record TXT pubblicato sul dominio: il valore inizia con v=spf1 e prosegue con l’elenco delle fonti autorizzate, chiuso da una regola per tutto il resto. Esempio per un dominio che usa Google Workspace e un server proprio:

v=spf1 ip4:203.0.113.25 include:_spf.google.com ~all

ElementoSignificato
ip4: / ip6:Un indirizzo o un blocco CIDR autorizzato
include:Autorizza i server indicati nell’SPF di un altro dominio, di solito quello del provider
a / mxAutorizza gli IP dei record A o MX del dominio
~allSoftfail: i messaggi da altre fonti sono sospetti ma non respinti
-allFail: i messaggi da altre fonti vanno rifiutati

Il dominio deve avere un solo record SPF e non più di 10 meccanismi che richiedono query DNS, come prevede la RFC 7208. Ogni include conta, insieme a quelli contenuti al suo interno. Se un dominio non invia mai posta, pubblica v=spf1 -all.

Come creare i record SPF, DKIM e DMARC

  1. Elenca tutti i servizi che spediscono email con il tuo dominio: casella di posta, newsletter, gestionale, sito, CRM.
  2. Compila il generatore con server, include e policy, poi copia nome e valore di ogni record.
  3. Nel pannello DNS crea un record di tipo TXT per ciascuno. Se esiste già un record SPF, sostituiscilo invece di aggiungerne un secondo.
  4. Attendi la scadenza del TTL e controlla il risultato con la verifica SPF, DKIM e DMARC.

Come si crea il record DKIM

Il record DKIM contiene la chiave pubblica che i destinatari usano per verificare la firma dei tuoi messaggi. La coppia di chiavi la genera il servizio che invia la posta, perché è lui a firmare con la chiave privata: Google Workspace, Microsoft 365, il pannello dell’hosting o la piattaforma di newsletter ti forniscono il selettore e il valore da pubblicare.

Il record va creato sul nome selettore._domainkey.example.com e ha la forma v=DKIM1; k=rsa; p=MIIBIjANBg…, dove p= è la chiave pubblica in Base64. Una chiave RSA da 2048 bit supera i 255 caratteri di una singola stringa TXT: molti pannelli la dividono da soli, altrimenti va spezzata in più stringhe tra virgolette all’interno dello stesso record. Il generatore impagina il record partendo dalla chiave pubblica: la chiave privata resta al tuo servizio di posta.

Come si scrive un record DMARC

Il record DMARC si pubblica come TXT sul nome _dmarc.example.com. Un buon punto di partenza è:

v=DMARC1; p=none; rua=mailto:dmarc@example.com

TagSignificato
pPolicy per il dominio: none (solo monitoraggio), quarantine (cartella spam), reject (rifiuto)
spPolicy per i sottodomini esistenti, se diversa da p
npPolicy per i sottodomini che non esistono, introdotta dalla RFC 9989
ruaIndirizzo che riceve i report aggregati giornalieri
adkim / aspfAllineamento rilassato (r, predefinito) o stretto (s)
tModalità di test (t=y), che nella RFC 9989 sostituisce il vecchio tag pct

Lascia p=none per qualche settimana, leggi i report per scoprire tutti i servizi che spediscono a tuo nome, poi passa a quarantine e infine a reject. Passare subito a reject rischia di bloccare email legittime, come quelle del gestionale o delle fatture.

Dopo la pubblicazione controlla i record con la verifica SPF, DKIM e DMARC e, se vuoi vedere tutti i TXT del dominio, con il DNS lookup.

Domande frequenti

Posso avere due record SPF sullo stesso dominio?

No, un dominio deve avere un solo record SPF. Con due record che iniziano con v=spf1 il controllo restituisce un errore permanente e l’SPF non vale. Se aggiungi un nuovo servizio, inserisci il suo include nel record esistente, prima di ~all o -all, invece di creare un secondo record.

Meglio ~all o -all nel record SPF?

-all chiede di rifiutare i messaggi da server non autorizzati, ~all di segnarli come sospetti. Con DMARC attivo la differenza conta poco, perché decide la policy DMARC. Usa ~all finché non sei sicuro di aver elencato tutti i servizi che spediscono per te, poi valuta -all.

Il generatore crea anche la chiave DKIM?

No, la chiave DKIM va generata dal servizio che invia la posta, perché solo lui conserva la chiave privata per firmare i messaggi. Dal pannello di Google Workspace, Microsoft 365, dell’hosting o della piattaforma di newsletter ottieni selettore e chiave pubblica. Il generatore compone nome e valore del record TXT da pubblicare.

Quanto tempo serve perché i nuovi record funzionino?

I nuovi record sono visibili appena il provider DNS li pubblica, di solito in pochi minuti. Se stai modificando un record esistente, i resolver possono usare il valore vecchio fino alla scadenza del suo TTL, spesso un’ora. Puoi seguire l’aggiornamento con il controllo della propagazione DNS.

Fonti e riferimenti

Pagina aggiornata il