tutte le guide

// come risolvere

Dominio MAIL FROM personalizzato su Amazon SES: allineamento SPF per DMARC

Amazon SES usa un dominio di bounce amazonses.com, quindi SPF non è allineato per DMARC. Configura un sottodominio MAIL FROM con i record MX e SPF giusti.

Cosa significa

Ogni email ha due indirizzi mittente. L'indirizzo From è quello che vedono le persone. Il MAIL FROM (chiamato anche envelope sender, Return-Path o indirizzo di bounce) è usato dai server per rimandare i messaggi di mancato recapito. SPF controlla il dominio del MAIL FROM, non quello del From.

Per impostazione predefinita, Amazon SES usa come MAIL FROM un sottodominio di amazonses.com. SPF viene superato, ma per amazonses.com, non per il tuo dominio. DMARC richiede che SPF o DKIM vengano superati per un dominio allineato con il tuo dominio From. Quindi, con le impostazioni predefinite, SPF non conta mai per DMARC. In un report appare così:

spf=pass smtp.mailfrom=0100018abc...@us-east-1.amazonses.com
dkim=pass header.d=yourdomain.com
dmarc=pass header.from=yourdomain.com

Qui DMARC passa comunque grazie a DKIM. Ma dipendi solo da DKIM: se un inoltro o un piè di pagina aggiunto da un gateway rompe la firma, DMARC fallisce. Un dominio MAIL FROM personalizzato ti dà un secondo risultato positivo e allineato. L'idea generale è spiegata in Return-Path, envelope sender e From.

Perché succede

  • Sull'identità non è configurato alcun dominio MAIL FROM personalizzato (è il caso predefinito).
  • Un dominio MAIL FROM personalizzato è configurato ma il suo stato è Pending, TemporaryFailure o Failed. Con l'opzione di ripiego Use default MAIL FROM domain, SES torna silenziosamente ad amazonses.com.
  • Il sottodominio MAIL FROM ha due record MX, oppure nessuno, o una Region sbagliata nel valore MX.
  • Il tuo record DMARC usa l'allineamento SPF rigoroso (aspf=s). Un sottodominio come mail.yourdomain.com si allinea solo in modalità relaxed, quella predefinita.

Come verificare

Invia un'email tramite SES all'indirizzo unico nella home page di Delivmail e apri il report. Guarda il dominio controllato da SPF e se la sezione DMARC indica SPF come allineato. Se vedi amazonses.com, il MAIL FROM personalizzato non è attivo. Nella console SES apri Identities, il tuo dominio e il riquadro Custom MAIL FROM domain per vederne lo stato. Da un terminale:

dig +short MX mail.yourdomain.com
dig +short TXT mail.yourdomain.com
dig +short TXT _dmarc.yourdomain.com

Come risolvere

  1. Scegli un sottodominio dedicato, per esempio mail.yourdomain.com o bounce.yourdomain.com. AWS richiede che sia un sottodominio di un'identità verificata, non usato per inviare come From e non usato per ricevere email. Non riutilizzare un sottodominio che ha già record MX per una casella di posta.
  2. Nella console: Identities, il tuo dominio, Custom MAIL FROM domain, Edit. Spunta Use a custom MAIL FROM domain, inserisci il sottodominio e scegli il Behavior on MX failure. Use default MAIL FROM domain continua a inviare se il DNS si guasta; Reject message blocca l'invio con un errore MailFromDomainNotVerified.
  3. Pubblica i due record mostrati da SES, sostituendo la Region con la tua:
mail.yourdomain.com.  MX   10 feedback-smtp.us-east-1.amazonses.com
mail.yourdomain.com.  TXT  "v=spf1 include:amazonses.com ~all"

Su quel sottodominio deve esserci esattamente un record MX, altrimenti la configurazione fallisce. Il record SPF va sul sottodominio, non sul dominio principale, quindi non consuma nessuna delle 10 ricerche DNS del tuo record SPF principale. Se il sottodominio ha già un CNAME, rimuovilo prima: un CNAME non può coesistere con record MX o TXT (consulta conflitti tra CNAME e record MX e TXT).

Con la CLI la stessa impostazione è:

aws sesv2 put-email-identity-mail-from-attributes \
  --email-identity yourdomain.com \
  --mail-from-domain mail.yourdomain.com \
  --behavior-on-mx-failure USE_DEFAULT_VALUE

SES cerca il record MX per un massimo di 72 ore. Se non lo trova, lo stato diventa Failed e devi ripetere la configurazione. Ripeti l'operazione per ogni Region in cui usi l'identità.

Mantieni l'allineamento relaxed in DMARC (niente aspf=s), altrimenti il sottodominio non sarà allineato. Se anche altri servizi inviano per il tuo dominio, verifica come convivono in più servizi email su un solo dominio. Per le basi di DMARC, consulta DMARC fallisce: SPF e DKIM non corrispondono al tuo dominio.

Verifica che sia risolto

Attendi lo stato Success nella console (SES invia anche un'email al proprietario dell'account). Invia un nuovo test Delivmail: SPF dovrebbe ora essere superato per mail.yourdomain.com e DMARC dovrebbe mostrare sia SPF sia DKIM allineati. Poi invia di nuovo al destinatario il cui server aveva rifiutato o filtrato il tuo messaggio. Le modifiche DNS possono impiegare un po' di tempo a raggiungere tutti i resolver, a seconda del TTL.

Verifica che sia risolto

Una modifica DNS può richiedere da pochi minuti a qualche ora. Poi invia una nuova email di test o scansiona di nuovo il tuo dominio.

Guide correlate