DMARC (RFC 7489) le spune serverelor care primesc mail ce să facă cu mesajele care folosesc domeniul dumneavoastră în adresa From fără să treacă autentificarea, și unde să vă trimită rapoarte despre ele. Ghidul arată cum îl introduceți treptat, fără să blocați mailul legitim. Înregistrarea o faceți cu generatorul DMARC, iar rapoartele le citiți cu analizorul de rapoarte DMARC.
Când trece un mesaj DMARC
Un mesaj trece DMARC când cel puțin una dintre verificări trece și este aliniată cu domeniul din From (RFC 7489, secțiunea 3.1):
- DKIM aliniat: o semnătură DKIM validă al cărei domeniu
d=corespunde domeniului din From. - SPF aliniat: SPF trece pentru adresa din plic (
MAIL FROM, Return-Path), iar domeniul ei corespunde domeniului din From.
Alinierea este necesară pentru că un mesaj poate purta o semnătură validă de la orice domeniu, inclusiv al unei liste de discuții sau al unui atacator. O semnătură validă nu dovedește singură că mesajul vine de la domeniul din From.
Alinierea are două moduri, alese cu adkim și aspf:
| Mod | Ce înseamnă | Exemplu: From alerte@stiri.exemplu.ro |
|---|---|---|
r (relaxed, implicit) | același domeniu organizațional | trece cu d=exemplu.ro |
s (strict) | exact același nume | trece doar cu d=stiri.exemplu.ro |
Modul relaxat este de obicei alegerea potrivită: cel strict face să pice și mesajele de pe subdomenii semnate cu domeniul principal.
Înregistrarea
DMARC este o înregistrare TXT la _dmarc. + domeniu. Primele etichete trebuie să fie v=DMARC1, apoi p, în această ordine (secțiunea 6.3):
_dmarc.exemplu.ro. IN TXT "v=DMARC1; p=none; rua=mailto:dmarc@exemplu.ro"
| Etichetă | Implicit | Ce face |
|---|---|---|
p | obligatorie | politica: none, quarantine sau reject |
sp | ca p | politica pentru subdomenii |
pct | 100 | procentul de mesaje căruia i se aplică politica |
rua | lipsește | unde vin rapoartele agregate zilnice |
ruf | lipsește | unde vin rapoartele despre mesaje individuale |
adkim, aspf | r | modul de aliniere |
Fără rua, serverele nu trimit rapoarte agregate (secțiunea 6.3). Fără rapoarte nu aveți cum să vedeți ce s-ar bloca, deci rua e primul lucru de pus.
Pasul 1: p=none și rapoarte
Porniți cu p=none. Politica nu schimbă nimic la livrare, dar serverele care implementează DMARC încep să vă trimită zilnic rapoarte agregate: de pe ce adrese IP s-a trimis mail cu domeniul dumneavoastră în From, câte mesaje și cu ce rezultate SPF și DKIM (secțiunea 7.2).
Rapoartele vin ca atașamente XML, de obicei comprimate. În analizorul de rapoarte vedeți sursele, ce trece și ce pică. Pentru fiecare sursă care pică:
- O recunoașteți (un serviciu de newsletter, facturare, CRM, un server propriu): configurați-i SPF sau, mai bine, DKIM cu domeniul dumneavoastră.
- Nu o recunoașteți: e, cel mai probabil, cineva care vă folosește domeniul fără drept. Exact asta va opri politica de mai târziu.
Lăsați p=none cel puțin câteva săptămâni, ca să prindeți și sursele care trimit rar, de exemplu facturile lunare.
Pasul 2: quarantine, treptat
Când sursele legitime trec, treceți la p=quarantine. Mesajele care pică ajung de obicei în spam. Cu pct puteți aplica politica doar unei părți a mesajelor:
v=DMARC1; p=quarantine; pct=25; rua=mailto:dmarc@exemplu.ro
pct nu schimbă rapoartele: toate mesajele sunt raportate, indiferent de procent (secțiunea 6.6.4). Creșteți procentul (25, 50, 100) urmărind rapoartele după fiecare pas.
Pasul 3: reject
p=reject le cere serverelor să respingă mesajele care pică, de preferat chiar în timpul conversației SMTP (secțiunea 6.3). Este protecția completă împotriva falsificării domeniului.
Un detaliu din secțiunea 6.6.4: cu p=reject și pct sub 100, mesajele care nu intră în procent sunt tratate ca la quarantine, nu livrate normal. Trecerea de la quarantine la reject nu slăbește deci nimic pe parcurs.
Redirecționările și listele de discuții
Un mesaj redirecționat automat (de exemplu, o adresă veche care trimite totul mai departe) pleacă de pe alt server decât al dumneavoastră, așa că SPF pică la destinația finală (RFC 7208, secțiunea 10.3). DKIM supraviețuiește de obicei redirecționării, pentru că semnătura călătorește cu mesajul.
Consecința practică: semnați tot mailul cu DKIM, nu vă bazați doar pe SPF. În analizor, mesajele care trec DMARC doar prin SPF sunt semnalate separat. Listele de discuții care modifică subiectul sau corpul mesajului strică însă și semnătura DKIM, pentru că semnătura acoperă exact acele părți.
Subdomeniile
Politica din _dmarc.exemplu.ro se aplică și subdomeniilor care nu au înregistrare proprie: serverele o caută întâi la domeniul exact din From, apoi la domeniul organizațional (secțiunea 6.6.3). Cu sp puteți da subdomeniilor altă politică, de exemplu p=quarantine; sp=reject când subdomeniile nu trimit mail deloc.
Rapoartele la alt domeniu
Dacă rapoartele trebuie să ajungă la alt domeniu decât al dumneavoastră (de exemplu, la un serviciu de analiză), acel domeniu trebuie să confirme că le acceptă, altfel serverele nu le trimit. Confirmarea este o înregistrare TXT v=DMARC1 la exemplu.ro._report._dmarc.domeniul-destinatie (secțiunea 7.1). Generatorul DMARC verifică automat această confirmare pentru adresele din rua și ruf.