Configure DMARC
Come configurare un record DMARC
Il record DMARC
Il record DMARC, similmente a SPF e DKIM viene scritto dal proprietario del dominio mittente in un record TXT
: _dmarc.dominio
. La sintassi [1] del record prevede di specificare obbligatoriamente i tag di versione (v
) e policy (p
), mentre gli altri tag sono opzionali.
Tag | Descrizione | Esempio |
---|---|---|
Version (v) | Versione DMARC; al momento il solo valore ammissibile è DMARC1
|
v=DMARC1;
|
Policy (p) | Può essere none (solo reporting), quarantine (messaggi non corretti vanno in quarantena e possono essere sbloccati da un admin) o reject (i messaggi non conformi vengono scartati).
|
p=quarantine;
|
Percentage (pct) | La percentuale di messaggi non conformi che viene effettivamente quarantinata / rigettata. Questo tag serve per introdurre le policy DMARC in maniera graduale. | pct=25;
|
RUA Report Email Address(es) (rua): | Serve per designare uno o più indirizzi email ai quali inviare i rapporti aggregati, utili per monitorare la consegna delle email e identificare potenziali spoofing o attacchi di phishing | rua=email1@mxtoolbox.com,email2@mxtoolbox.com;
|
RUF Report Email Address(es) (ruf) | Serve per designare uno o più indirizzi ai quali inviare i rapporti forensi. Questi rapporti sono molto più dettagliati rispetto ai rapporti aggregati DMARC, poiché rappresentano un "campionamento" dei messaggi che non hanno superato i controlli. Non tutti i mailer restituiscono il RUF report. | ruf=dmarcfailurereports@mxtoolbox.com;
|
Forensic Reporting Options (fo) | Il tag fo viene usato insieme al tag ruf, e stabilisce quali tipi di report devono essere restituiti al mittente. Dato che questi report potrebbero contenere dati personali é possibile che il tag non venga onorato. | fo=0:1:s;
|
ASPF Tag (aspf) | Specifica se l'allineamento di SPF deve essere relaxed (r) o strict (s). In relaxed viene considerato il solo dominio (quindi le mail inviate da domini di terzo livello vengono accettate) mentre in modalità strict serve un match esatto. | aspf=r;
|
ADKIM Tag (adkim) | Funzionamento analogo al tag ASPF, anche qui i valori possono essere relaxed (r) o strict (s) | adkim=r;
|
Report Format (rf) | Specifica il formato in cui devono essere riportati i forensics report, attualmente l'unico valore supportato é afrf | rf=afrf;
|
Report Interval (ri) | Specifica ogni quanto tempo devono essere inviati i report aggregati. Ti solito si usa il valore di 86400 secondi (un giorno) | ri=86400;
|
Subdomain Policy (sp) | Funziona allo stesso modo del tag p e specifica la policy da applicare ai sottodomini. Se non specificato viene usata di default la policy del dominio principale. | sp=reject;
|
Diversamente da SPF e DKIM, configurare correttamente DMARC comporta alcune scelte: a parte la configurazione minimale (ovvero v=DMARC1; p=none;
) utile solo a soddisfare i requisiti minimi introdotti a partire dal Febbraio 2024 da parte di Google, Yahoo diventa necessario disporre di un'applicazione on-premise o di terze parti in grado di processare i report RUA e RUF
[Note: Report URI Aggregate e Report URI Forensics]
È inoltre importante introdurre gradatamente le policy DMARC cominciando con la policy none
per passare all'utilizzo delle policy quarantine
o reject
solo quando si é sicuri che le configurazioni sono assolutamente corrette. l'uso del tag pct
ha senso solo per soggetti che spediscono volumi importanti di mail.
Esempio di report RUA
Approfondimenti
- TBD
Riferimenti esterni
Bibliografia
- DMARC.org https://dmarc.org/
- PowerDMARC https://powerdmarc.com/what-is-dmarc/
Link utili
- DMARC Validation tools
- Mailhardener https://www.mailhardener.com/tools/dmarc-validator
- MXToolBox https://mxtoolbox.com/dmarc.aspx
- dmarcian https://dmarcian.com/dmarc-inspector/
- DMARC Email XML Parser
- DMARC Advisor https://eu.dmarcadvisor.com/dmarc-xml/
- MXToolBox https://mxtoolbox.com/DmarcReportAnalyzer.aspx