DMARC záznam

Mechanismus DMARC (Domain-based Message Authentication, Reporting and Conformance) slouží k validaci e-mailových zpráv, k čemuž využívá kombinaci již existujících principů SPF a DKIM. Umožňuje majiteli domény zabezpečit elektronickou komunikaci tím, že pomůže lépe zachytávat nevyžádanou poštu zneužívající jeho doménu. Aktivovat lze také zasílání reportů o odesílaných zprávách a chování příjemců. Díky těmto možnostem může správce domény kontrolovat, kdo využívá doménu k odesílání zpráv, kolik zpráv odchází a kam a jak jsou zprávy vyhodnocovány na straně příjemců.
 

Jak DMARC funguje?

Aktivujete-li na své doméně DMARC, získáte široké možnosti nastavení validace zpráv. Tuto validaci provádí příjemce, kterému dorazí zpráva z adresy na vaší doméně. Příjemce následně zprávu vyhodnocuje podle pravidel, která jste v DMARCu domény určili. Nakonec vám příjemce vygeneruje a zašle reporty, pokud jejich zasílání máte nastaveno. Pro aktivaci DMARC je také nutné zavést DKIM a zprávy jím podepisovat a na doméně vytvořit záznam pro SPF politiku.

V rámci DMARC se kontroluje tzv. DKIM shoda a SPF shoda (DKIM alignment a SPF alignment). Porovnává se, zda u přijaté zprávy souhlasí odchozí domény uvedené na různých místech (např. doména v hlavičce zpráva, DKIM podpisu a SMTP komunikaci).
 
  • DKIM alignment porovnává, zda se shoduje doména v DKIM podpisu, kterým je zpráva podepsána (v parametru d= v hlavičce zprávy) s doménou odesílatele v hlavičce zprávy.
  • SPF alignment porovnává, zda se shoduje doména odesílatele z hlavičky zprávy s MAIL FROM (tzv. obálkový odesílatel v SMTP komunikaci), příp. u zprávy s prázdným MAIL FROM s doménou v HELO/EHLO (identifikace serveru na začátku SMTP komunikace). Zároveň zpráva musí přijít z autorizované IP adresy v SPF záznamu v DNS.

Aby zpráva prošla úspěšně DMARC kontrolou, stačí, aby prošla alespoň jedním z testů výše (buď DKIM shodou nebo SPF shodou). Není tak nutné bezpodmínečně mít pozitivní výsledek obou kontrol, což někdy nebude ani možné – např. používáte-li externí mailingové služby, které vám zprávy podepisují svým DKIM podpisem, ale vy jste v nich uveden jako odesílatel, výsledek DKIM shody bude negativní, tj. fail.
 

Nastavení DMARC

Aktivaci DMARCu provedete přidáním DNS záznamu k doméně u registrátora. Je-li vaším registrátorem Seznam, více o editaci vašich DNS záznamů se dozvíte v článku DNS záznamy.

DNS záznam (typ TXT) pro DMARC vypadá zhruba následovně:
Doména Typ TTL Data
_dmarc TXT 1800 v=DMARC1; p=quarantine; sp=none; adkim=r; aspf=r; fo=1;…


Příklad záznamu DMARC (pole Data):

v=DMARC1; p=none; sp=quarantine; adkim=r; aspf=r; fo=1; rua=mailto:dmarc@vesela-domena.cz; ruf=mailto:dmarcfail@vesela-domena.cz; rf=afrf; pct=100; ri=86400


Doména

  • nastavujete-li DMARC pro hlavní doménu, např. vesela-domena.cz, tak za název _dmarc nebudete psát nic dalšího
  • nastavujete-li DMARC pro subdoménu, např. test.vesela-domena.cz, za _dmarc bude název subdomény (_dmarc.test)

Možné parametry DMARC záznamu
  • v – verze protokolu, v tuto chvíli může nabývat pouze hodnoty DMARC1
  • pct – % zpráv, které budou podléhat kontrole (100 je pro 100 %, tzn. všechny zprávy)
  • ruf – e-mailová adresa pro zasílání forenzních reportů
  • rua – e-mailová adresa pro zasílání agregovaných reportů
  • p – zvolená politika DMARC (ta určuje, jak bude příjemce zacházet se zprávami, které kontrolou neprojdou)
    • none – nijak, DMARC funguje pouze pro účely reportování a příjemce na jeho výsledek nebere ohled
    • quarantine – příjemce na výsledek kontroly bere ohled, zpravidla zprávu, která kontrolou neprošla, může označit za spam
    • reject – příjemce zprávu, která kontrolou neprošla, odmítne a nedoručí
  • sp – zvolená politika pro subdomény (např. neco.vesela-domena.cz), hodnoty stejné jako pro parametr p
  • adkim – mód kontroly pro DKIM shodu
    • r (relaxed) – méně restriktivní; shoda nastane, pokud souhlasí alespoň mateřská doména (např. cokoliv.vesela-domena.cz = vesela-domena.cz)
    • s (strict) – striktní; shoda nastane jen pokud je doména přesná
  • aspf – mód kontroly pro SPF shodu
    • r (relaxed) – méně restriktivní; shoda nastane, pokud souhlasí alespoň mateřská doména (např. cokoliv.vesela-domena.cz = vesela-domena.cz)
    • s (strict) – striktní; shoda nastane jen pokud je doména přesná
  • rf – formát pro reporty ke zprávám, v tuto chvíli může nabývat pouze hodnot afrf
  • ri – interval pro zasílání agregovaných reportů o zprávách, které neprošly kontrolou DMARC, ve vteřinách
  • fo – mód zasílání forenzních reportů (= reporty pro každou zprávu zvlášť)
    • 0 – report je příjemcem odeslán, pokud zpráva zcela neprojde DMARC kontrolou (tzn. obě kontroly, DKIM alignment a SPF alignment, selžou); výchozí hodnota
    • 1 – report je příjemcem odeslán, pokud zpráva neprojde kontrolou SPF alignment nebo DKIM alignment (tzn. zpráva ovšem stále mohla celkově úspěšně projít DMARC kontrolou)
    • d – report je příjemcem odeslán ke každé zprávě, která neprojde DKIM shodou
    • s – report je příjemcem odeslán ke každé zprávě, která neprojde SPF shodou
 

Reportování

Důležitou součástí funkce DMARC mechanismu je i reportování toho, co se stalo se zprávami u jednotlivých příjemců. Dostávat můžete agregované (hromadné) reporty od příjemců vašich zpráv v nastavených intervalech, eventuálně můžete aktivovat i forenzní reportování zvlášť pro každou zprávu.

Agregované reportování
V DNS záznamu pro DMARC aktivujete reportování přidáním parametru rua, do něhož uvedete svou e-mailovou adresu, např. rua=mailto:mailova@adresa.cz

Ve výchozím nastavení zasíláme denní reporty. Chcete-li získávat reporty v jiných časových intervalech, změňte nastavením přidání parametru ri a uvedením intervalu pro reporty ve vteřinách. Např. parametr ri=604800 bude reporty zasílat každých 7 dní.

Reporty jsou zasílány z adresy abuse@seznam.cz ve formátu XML. Podrobnosti k formátu a obsahu zasílaných informací jsou stručně popsány např. na stránkách Returnpath.com či příslušného RFC.

Forenzní reportování
Forenzní reporty se posílají zvlášť ke každé e-mailové zprávě, která u příjemce neprojde vámi nastavenými pravidly kontroly. Cílovou e-mailovou adresu pro zasílání reportů uvedete do parametru ruf, mód kontroly nastavíte v DNS záznamu parametrem fo. Pokud například k doméně nastavíte parametr fo=1, forenzní report se vám zašle ke každé zprávě, u které selže DKIM shoda nebo SPF shoda.
 

Problémy s DMARC

Chodí mi příliš mnoho reportů
Pokud vám přichází na e-mailovou adresu obrovské množství reportů, ať už od Seznamu nebo jiných příjemců, zřejmě máte aktivní forenzní reportování. To přichází ke každé zprávě, která neprojde nastavenými pravidly kontroly dle toho, pro jaké kontroly máte reporting zapnut.

Např. odešlete-li 10 tisíc zpráv na Seznam, vaše doména v odesílateli má v DNS nastaven reporting fo=1 a 8 tisíc z těchto zpráv neprojde DKIM shodou, zašleme vám 8 tisíc reportů. Toto podrobné reportování může přijít vhod, data můžete průběžně analyzovat. V řadě případů ovšem není detailní reporting nutný a využijete jej nejspíše až ve chvíli, kdy se setkáte s obtížemi, které chcete podrobně diagnostikovat.

Celkové vypnutí reportingu provedete odebráním příslušných parametrů z DMARC záznamu v DNS zóně domény. Forenzní reporty vypnete odebráním parametru ruf, agregované reporty smazáním parametru rua.

Chodí mi reporty na zprávy, které neposílám
Chodíli-li vám reporty ke zprávám, které jste je neodeslali, znamená to, že se zřejmě někdo snaží zprávy odesílat za vás. Příjemce zasílá report na e-mailovou adresu, která je uvedena v DNS záznamu domény, ze které mu zpráva přišla. Pokud se tedy někdo pokusí rozeslat zprávy s vaší e-mailovou adresou v poli Odesílatel, reporty k těmto zprávám obdržíte vy.

Mechanismus DMARC slouží mj. k odhalení těchto případů. Budete-li ve svém DMARCu používat politiku reject či quarantine, příjemce těchto falešných zpráv je s větší pravděpodobností nedoručí nebo označí za spam, protože neprojdou DMARC kontrolou. Díky DMARCu existuje totiž hned několik kontrol, kterými zpráva prochází, a u falešné zprávy je velká šance, že jimi neprojde úspěšně.


Pomohl Vám tento článek? Ne

Kontaktujte nás