Skip to content
Inizia con 100 crediti di verifica gratuiti
Qualisend
Guida alla configurazione SPF

SPF, DKIM e DMARC per Amazon SES.

Amazon SES è un mittente “per account”: non c'è una riga SPF condivisa da incollare sul dominio radice, né una procedura guidata di autenticazione del dominio che gestisca il DNS al posto tuo. Verifichi il dominio e attivi Easy DKIM (tre record CNAME per account generati da SES) e, poiché il mittente della busta predefinito di SES si trova su amazonses.com, puoi aggiungere facoltativamente un sottodominio MAIL FROM personalizzato per allineare anche SPF al tuo dominio. Appena i CNAME DKIM si risolvono, SES firma ogni messaggio con d=yourdomain.com, quindi DMARC viene superato grazie all'allineamento DKIM ancora prima che tu tocchi SPF.

Autenticazione per account
Your DNSAdd the CNAME / TXT records
Amazon SESSigns & sends as your domain
The inboxSPF · DKIM · DMARC pass

Perché autenticare Amazon SES?

SES ti mette a disposizione un'infrastruttura di invio grezza e ad alta deliverability, ma di proposito non pubblica l'autenticazione al posto tuo come fa una procedura guidata di Mailchimp o SendGrid: quel compito spetta a te, e saltarlo è il motivo per cui la posta SES finisce così spesso nello spam. Da febbraio 2024 Gmail e Yahoo richiedono a ogni mittente di grandi volumi (circa 5.000+ messaggi al giorno) di superare SPF, DKIM e DMARC con allineamento, e nel 2025 Microsoft ha iniziato a rifiutare la posta non conforme. Se invii tramite SES senza attivare Easy DKIM, i tuoi messaggi vengono firmati solo con la chiave condivisa di amazonses.com, nulla si allinea al tuo dominio, DMARC fallisce e la tua reputazione finisce nello stesso calderone di tutti gli altri tenant SES non autenticati. Attivare Easy DKIM risolve il nocciolo del problema con una sola mossa: SES firma come d=yourdomain.com, DKIM si allinea, DMARC viene superato e la reputazione di invio che costruisci resta al tuo dominio. Un dominio MAIL FROM personalizzato aggiunge poi l'allineamento SPF per i server riceventi che gli danno peso.

Come funziona davvero SPF con Amazon SES

Amazon SES è un provider per account, non un provider “include”: per la maggior parte degli utenti NON c'è alcun include:amazonses.com da aggiungere al record SPF RADICE, e lì non devi aggiungerlo. Per impostazione predefinita SES imposta il MAIL FROM della busta (il Return-Path, cioè l'indirizzo di bounce) su un sottodominio di amazonses.com. SPF viene quindi verificato sul record pubblicato da amazonses.com e supera automaticamente il controllo, ma lo supera per amazonses.com, non per il tuo dominio: non è “allineato” e da solo non serve a nulla per DMARC. È così per scelta progettuale e va bene, perché Easy DKIM fa superare DMARC tramite l'allineamento DKIM (SES firma con d=yourdomain.com). Se vuoi anche SPF allineato al tuo dominio (una doppia sicurezza, utile perché alcuni server riceventi danno peso all'allineamento SPF), configura un sottodominio MAIL FROM personalizzato (ad esempio mail.yourdomain.com) e pubblica v=spf1 include:amazonses.com ~all più un record MX che punta a feedback-smtp.{region}.amazonses.com. Il punto cruciale: quei due record vanno sul SOTTODOMINIO MAIL FROM, mai sul tuo SPF radice. Il tuo SPF radice resta intatto, SES non gli aggiunge alcuna ricerca DNS e include:amazonses.com compare solo su quel sottodominio dedicato.

Due modi per configurarlo

Consigliato

Easy DKIM: 3 CNAME (consigliato)

  • SES genera una coppia di chiavi RSA a 2048 bit e tu pubblichi tre token CNAME che delegano la chiave a SES
  • SES conserva e ruota la chiave privata: per te non c'è nulla da generare, archiviare, salvare in backup o ruotare
  • La pubblicazione dei tre CNAME verifica l'identità del dominio e attiva la firma DKIM in un solo passaggio
  • Funziona subito con l'allineamento d=yourdomain.com, quindi DMARC viene superato grazie a DKIM senza modifiche a SPF
Legacy

BYODKIM: 1 TXT (usa la tua chiave)

  • Generi tu la chiave RSA (1024-2048 bit, PKCS#1 o PKCS#8, base64/PEM) e pubblichi un unico TXT selector._domainkey con la chiave pubblica
  • Utile quando una policy interna ti impone di custodire le chiavi, o se vuoi riutilizzare una sola chiave tra provider o regioni
  • L'archiviazione e la rotazione delle chiavi sono a tuo carico: SES non vede mai la chiave privata
  • Un solo record DNS invece di tre, ma nessuna rotazione automatica delle chiavi

Passo dopo passo

Nella console SES
  1. 1

    Crea (o apri) l'identità del dominio

    Apri la console SES su console.aws.amazon.com/ses e, in Configuration, scegli Identities → Create identity → Domain. Inserisci yourdomain.com. Se il dominio esiste già, aprilo e usa invece la scheda Authentication.

  2. 2

    Lascia Easy DKIM su RSA_2048

    In Advanced DKIM settings lascia Identity type = Easy DKIM e DKIM signing key length = RSA_2048_BIT (il valore predefinito e la scelta più robusta; RSA_1024_BIT è solo un'impostazione legacy più debole). Assicurati che DKIM signatures = Enabled. Scegli BYODKIM solo se devi fornire una chiave tua.

  3. 3

    (Facoltativo) Imposta un dominio MAIL FROM personalizzato

    Nella pagina dell'identità, apri il riquadro Custom MAIL FROM domain → Edit → seleziona “Use a custom MAIL FROM domain” e inserisci un sottodominio dedicato come mail.yourdomain.com (da non usare per nient'altro). Imposta Behavior on MX failure su “Use default MAIL FROM domain” mentre il DNS si propaga.

Nel tuo DNS
  1. 4

    Aggiungi i tre record CNAME DKIM

    SES mostra tre record nella forma token1._domainkey → token1.dkim.amazonses.com (token2 e token3 allo stesso modo). Aggiungili come CNAME esattamente come appaiono. Pubblicarli verifica il dominio e attiva DKIM: con Easy DKIM non c'è alcun TXT da incollare.

  2. 5

    Aggiungi i record MX e SPF del sottodominio (solo se hai attivato il MAIL FROM personalizzato)

    Sul sottodominio MAIL FROM aggiungi un record MX con priorità 10 e valore feedback-smtp.{region}.amazonses.com (specifico per regione, es. us-east-1), e un record TXT v=spf1 include:amazonses.com ~all. Entrambi vanno su mail.yourdomain.com, non sul dominio radice.

  3. 6

    Pubblica o mantieni un solo record DMARC

    Aggiungi un record TXT su _dmarc.yourdomain.com che inizi con v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com. Tieni esattamente un record _dmarc per l'intero dominio: non aggiungerne un secondo per SES.

  4. 7

    Disattiva il proxy di Cloudflare sui CNAME

    Se il tuo DNS è su Cloudflare, imposta ogni CNAME DKIM su “DNS only” (nuvola grigia). Un CNAME con proxy attivo (nuvola arancione) non si risolve in *.dkim.amazonses.com e la verifica DKIM resta bloccata in pending.

Verifica
  1. 8

    Attendi che SES rilevi i record

    Torna nella console: lo stato DKIM passa a Verified/Successful e, se ne hai impostato uno, lo stato del MAIL FROM personalizzato passa a Success. Di solito il rilevamento richiede pochi minuti, ma SES concede fino a 72 ore; SES ti invia un'email al completamento di ciascun rilevamento.

  2. 9

    Richiedi l'accesso in produzione (esci dalla sandbox)

    I nuovi account partono nella sandbox di SES: puoi inviare solo a indirizzi verificati, con un massimo di 200 messaggi al giorno e 1 al secondo. In Account dashboard scegli Request production access, altrimenti la tua posta reale non parte mai, per quanto perfetto sia il tuo DNS.

  3. 10

    Invia un'email di prova e leggi le intestazioni

    Invia un messaggio reale da un indirizzo del dominio e aprilo in Gmail → Show original. Controlla che ci siano DKIM: PASS con d=yourdomain.com, SPF: PASS e DMARC: PASS.

Record da aggiungere

Amazon SES genera i valori esatti nella sua procedura guidata di configurazione: questi mostrano la struttura di ciò che aggiungerai presso il tuo provider DNS.

TipoHostValore
CNAMEtoken1._domainkeytoken1.dkim.amazonses.comChiave Easy DKIM 1: il token è univoco per il tuo account/regione e SES ruota la chiave che c'è dietro
CNAMEtoken2._domainkeytoken2.dkim.amazonses.comChiave Easy DKIM 2 (token per account)
CNAMEtoken3._domainkeytoken3.dkim.amazonses.comChiave Easy DKIM 3 (token per account)
MXmailfeedback-smtp.us-east-1.amazonses.comSolo con MAIL FROM personalizzato: priorità 10, host specifico per regione; esattamente un MX su questo sottodominio
TXTmailv=spf1 include:amazonses.com ~allSolo con MAIL FROM personalizzato: va sul sottodominio MAIL FROM, NON sul tuo SPF radice
TXT_dmarcv=DMARC1; p=none; rua=mailto:dmarc@yourdomain.comLa tua policy DMARC: una per dominio, parti da p=none

Tieni esattamente un record TXT SPF (v=spf1) sul dominio radice e unisci al suo interno tutti i mittenti. Avere due record SPF è di per sé un errore.

Il limite di 10 ricerche DNS

SPF ha un tetto fisso di 10 ricerche DNS: se lo superi, restituisce un permerror e smette di essere valido ovunque. Ecco quanto consuma di questo budget la configurazione di Amazon SES.

SPF 10-lookup budget0 used · 10 free

La configurazione consigliata di Amazon SES aggiunge 0 ricerche: tutte e 10 restano libere per i mittenti che hanno davvero bisogno di un include.

DKIM

Per SES il DKIM è il record che regge tutto, e Easy DKIM lo rende automatico. Quando lo attivi, SES genera una coppia di chiavi RSA a 2048 bit (RSA_2048 è il valore predefinito della console; 1024 bit è solo un'opzione legacy più debole) e ti fornisce tre token. Li pubblichi come CNAME: token1._domainkey.yourdomain.com → token1.dkim.amazonses.com, e lo stesso per token2 e token3. Nota che la lunghezza della chiave non cambia ciò che memorizzi: Easy DKIM pubblica sempre tre CNAME brevi, che tu scelga 1024 o 2048, perché la vera chiave pubblica si trova sul lato SES del CNAME, non nella tua zona. Poiché sono CNAME delegati a SES e non record TXT da incollare, SES conserva la chiave privata e può ruotare le chiavi pubblicate dietro quei selettori senza che tu debba mai più modificare il DNS. Ogni messaggio viene poi firmato con d=yourdomain.com, ed è questo che si allinea per DMARC. Nella console SES attuale, la pubblicazione di questi stessi CNAME serve anche a verificare l'identità del dominio (verifica basata su DKIM), quindi di solito non c'è un token TXT _amazonses separato da aggiungere. Due avvertenze: su Cloudflare i CNAME devono essere “DNS only” (nuvola grigia), e le identità SES valgono per singola regione AWS: inviare da una seconda regione genera altri tre token, che devi pubblicare anch'essi. Se non puoi usare i CNAME, l'alternativa è BYODKIM: generi tu la chiave e pubblichi un unico TXT selector._domainkey con la chiave pubblica (e in quel caso la chiave a 2048 bit produce davvero un valore TXT più lungo, che alcuni provider DNS dividono in più stringhe), ma la rotazione diventa compito tuo.

DMARC

DMARC è un record di policy separato sul dominio radice, non qualcosa che SES pubblica per te. Aggiungi un record TXT su _dmarc.yourdomain.com che inizi con v=DMARC1; p=none; rua=mailto:dmarc@yourdomain.com: p=none è solo monitoraggio, quindi non cambia nulla nel recapito mentre verifichi che la posta SES superi i controlli con allineamento. La sfumatura specifica di SES: poiché il MAIL FROM della busta predefinito è un sottodominio di amazonses.com, SPF viene superato ma non è allineato al tuo dominio, quindi in una configurazione SES predefinita DMARC viene superato interamente grazie all'allineamento DKIM. Ciò significa che devi avere Easy DKIM (o BYODKIM) attivo e verificato prima di irrigidire la policy: con DKIM disattivato, una configurazione SES con MAIL FROM predefinito fallisce DMARC senza appello. Quando i report aggregati (rua) confermano per una o due settimane che SES è una sorgente costante e allineata, passa da p=none a p=quarantine e infine a p=reject. Se imposti anche un dominio MAIL FROM personalizzato, ottieni in più l'allineamento SPF, cioè due modi indipendenti per superare DMARC. Tieni esattamente un record _dmarc per l'intero dominio, a prescindere da quanti mittenti usi: non aggiungerne mai un secondo per SES.

Verifica che funzioni davvero

Non fidarti solo dei badge della console: controlla su un messaggio reale. In SES, lo stato DKIM dell'identità deve indicare Verified/Successful e, se ne hai configurato uno, lo stato del MAIL FROM personalizzato deve indicare Success. Poi inviati un'email di prova da un indirizzo del dominio, aprila in Gmail e scegli ⋮ → Show original: devi vedere DKIM: PASS con d=yourdomain.com (non amazonses.com), più DMARC: PASS. SPF mostrerà PASS per il tuo sottodominio MAIL FROM se ne hai impostato uno personalizzato, oppure per amazonses.com se non l'hai fatto: il caso amazonses.com è previsto e DMARC viene comunque superato grazie a DKIM, quindi non considerarlo un errore. Analizza il tuo dominio con il check-up del dominio di Qualisend per confermare che tutti e tre i CNAME DKIM (e, se li usi, MX e SPF del MAIL FROM) si risolvano e, quando iniziano ad arrivare i report aggregati DMARC, caricane uno nell'analizzatore di report DMARC: SES dovrebbe comparire come sorgente allineata che supera i controlli.

Insidie comuni

  • Configurazione DNS

    SES è per regione. Le identità, i tre token DKIM e l'host MX feedback-smtp valgono tutti per una sola regione AWS. Se invii sia da us-east-1 sia da eu-west-1, ogni regione genera i propri tre CNAME DKIM e il proprio MX regionale: pubblica i record di ogni regione, altrimenti la posta inviata dalla regione non configurata non si autentica.

  • Copertura

    I nuovi account partono nella sandbox. Finché non usi Request production access, SES recapita solo a destinatari verificati, con un massimo di 200 messaggi al giorno e 1 al secondo: un DNS perfetto non serve a nulla se sei ancora nella sandbox.

  • Copertura

    L'allineamento SPF è facoltativo, non automatico. Per impostazione predefinita la busta è un sottodominio di amazonses.com, quindi SPF viene superato ma non si allinea e DMARC dipende interamente da DKIM. Vedere “SPF: amazonses.com” è normale: imposta un MAIL FROM personalizzato solo se vuoi specificamente allineare anche SPF.

  • Fa fallire l'autenticazione

    Non aggiungere mai include:amazonses.com al tuo SPF RADICE. Va solo sul sottodominio MAIL FROM personalizzato. Sul dominio radice non serve a nulla e consuma inutilmente una delle tue 10 ricerche SPF.

  • Copertura

    Esattamente un MX sul sottodominio MAIL FROM. SES fa fallire la configurazione del MAIL FROM personalizzato se quel sottodominio ha più di un record MX, quindi usa un sottodominio dedicato (mail. o bounce.) che non serva per inviare o ricevere altro.

  • Configurazione DNS

    Il proxy di Cloudflare rompe DKIM. Imposta tutti e tre i CNAME su “DNS only” (nuvola grigia); un CNAME con proxy attivo (nuvola arancione) non si risolve in *.dkim.amazonses.com e l'identità resta in pending.

  • Fa fallire l'autenticazione

    Dominio duplicato nel campo host e punti finali. Inserisci solo l'etichetta (token1._domainkey, mail) e non l'FQDN completo se il pannello aggiunge il dominio per te; e dove un provider vuole un FQDN come valore di MX o CNAME, usa un punto finale, così feedback-smtp.us-east-1.amazonses.com non viene storpiato in ...amazonses.com.yourdomain.com.

  • Copertura

    “Behavior on MX failure = Reject message” è rischioso all'inizio. Mentre il DNS si propaga (o se l'MX non si risolve più), Reject fa rimbalzare tutta la tua posta: lascialo su “Use default MAIL FROM domain” finché lo stato non indica Success.

Crea il tuo record SPF

Amazon SES non richiede un include: nel record SPF del dominio radice. Usa il generatore per comporre un unico record pulito per gli altri mittenti e tienilo su una sola riga.

1

Fonti di invio

Cerca ogni piattaforma con cui invii email e selezionala.

Cerca qui sopra la tua piattaforma email oppure .

2

Server propri del dominio

Autorizza il dominio stesso, se invia posta direttamente (non tramite una delle piattaforme sopra).

3

Altri mittenti e IP

Tutto ciò che non è nella lista: l'host SPF di un altro provider o indirizzi IP specifici.

Aggiungiamo noi il prefisso include:. Inserisci l'hostname indicato nella documentazione del provider.

4

Policy per tutti gli altri

Cosa devono fare i server riceventi con la posta proveniente da server non elencati sopra (il meccanismo all).

Il tuo record SPF0/10 ricerche DNS
v=spf1 ~all

Ancora nessun mittente, quindi ogni messaggio finirebbe nella policy ~all. Aggiungi al passaggio 1 le piattaforme con cui invii.

  • Pubblicalo come record TXT sul dominio radice: host @ (il dominio senza prefissi), come valore l'intera stringa qui sopra.
  • Tieni un solo record SPF per dominio. Unisci tutte le fonti di invio in quest'unica riga. Un secondo record TXT che inizia con v=spf1 li rende entrambi non validi.
  • Resta entro le 10 ricerche DNS. Contano come ricerche include:, a e mx, e un include può innescarne altre al suo interno; ip4: e ip6: sono gratuiti.

Autenticazione pubblicata? Il passo successivo è inviare a una lista pulita e verificata.

Verifica una lista

SPF per Amazon SES: domande frequenti

Non al tuo SPF radice. SES è per account e, per impostazione predefinita, il mittente della busta è un sottodominio di amazonses.com, quindi SPF viene già superato lì: il tuo SPF radice resta intatto. Aggiungi v=spf1 include:amazonses.com ~all solo su un sottodominio MAIL FROM personalizzato dedicato (es. mail.yourdomain.com), e solo se vuoi SPF allineato al tuo dominio.

Sì, purché Easy DKIM (o BYODKIM) sia attivo e verificato. SES firma con d=yourdomain.com, che si allinea al tuo dominio From, quindi DMARC viene superato grazie all'allineamento DKIM anche se SPF non è allineato. Un MAIL FROM personalizzato aggiunge solo l'allineamento SPF: per DMARC non è necessario.

Perché non hai impostato un dominio MAIL FROM personalizzato, quindi il Return-Path della busta è un sottodominio di amazonses.com. SPF sta convalidando il record di amazonses.com, che supera il controllo ma non si allinea al tuo dominio. È previsto e per DMARC va bene (ci pensa DKIM). Imposta un MAIL FROM personalizzato se vuoi che SPF mostri un tuo sottodominio.

I tre record Easy DKIM sono CNAME. Se usi un MAIL FROM personalizzato, si aggiungono un MX (priorità 10) e un TXT SPF, entrambi sul sottodominio MAIL FROM. DMARC è un TXT separato su _dmarc. BYODKIM è l'eccezione: usa un unico TXT al posto dei tre CNAME.

Quasi certamente sei ancora nella sandbox di SES. Vai nell'Account dashboard di SES e usa Request production access; finché non viene concesso, SES recapita solo a indirizzi verificati, con 200 messaggi al giorno. Un DNS corretto non ti fa uscire dalla sandbox.

No. Ogni regione è un'identità separata con i propri tre token DKIM e il proprio MX feedback-smtp.{region}.amazonses.com. Pubblica i record di ogni regione, altrimenti la posta inviata da una regione non configurata non si autentica.

Se il DNS del tuo dominio è in Route 53 con lo stesso account AWS, SES offre “Publish records using Route 53” e aggiunge automaticamente tutti i record DKIM (e MAIL FROM): è la strada più semplice. Se usi un altro provider DNS, aggiungi i record a mano: funziona allo stesso modo.

Letture correlate

Altri provider: Transazionali e API

Tutte le guide SPF
Monitora ogni giorno SPF, DKIM e DMARC di Amazon SESConfigurare il record è un solo passaggio. Il monitoraggio check-up del dominio ricontrolla ogni giorno il numero di query SPF, le chiavi DKIM e la policy DMARC e ti scrive quando uno si rompe.Scopri il monitoraggio check-up del dominioSPF: troppe query DNS. Come contarle e correggere il permerror
Integrazione con Amazon SESL'integrazione Amazon SES di Qualisend arriverà presto.

Dopo la pubblicazione, controlla con il check-up del dominio che tutti i record vengano risolti correttamente, poi scopri con l'analizzatore di report DMARC chi invia a tuo nome. Sfoglia tutte le fonti di invio nel generatore. L'autenticazione, però, è solo metà della deliverability: un IP o un dominio di invio in blacklist ti manda comunque nello spam, per quanto pulito sia il tuo SPF, quindi conviene tenere d'occhio le blacklist con il monitoraggio blacklist.

Dominio autenticato: ora mantieni pulita la lista

Superare SPF, DKIM e DMARC ti porta nella posta in arrivo; una lista pulita ti ci fa restare. Verifica la tua: inizia gratis con 100 crediti, senza carta di credito.

Inizia a verificare