Datahorses

SPF, DKIM a DMARC zrozumiteľne pre majiteľov firiem

Autor: · · 4 min čítania

SPF, DKIM a DMARC sú 3 záznamy DNS, ktoré celému internetu oznamujú, ktoré servery smú posielať poštu za vašu doménu a čo robiť s poštou, ktorá týmito kontrolami neprejde. SPF vymenúva povolených odosielateľov, DKIM pridáva ku každej správe kryptografický podpis a DMARC oba spája s adresou, ktorú ľudia naozaj vidia v riadku From, a určuje, čo sa má stať, keď kontrola zlyhá.

Bez nich môže ktokoľvek poslať správu s From: billing@yourcompany.com a mnohí poskytovatelia schránok nemajú dôvod o nej pochybovať. Keď sú správne nastavené, podvrhnutá správa overením neprejde a môže byť odmietnutá alebo presunutá do spamu skôr, než ju váš zákazník prečíta.

Dobrá správa: všetky 3 záznamy si v DNS môže prezrieť ktokoľvek, takže svoje overíte za pár minút príkazmi nižšie.

SPF: kto smie posielať za vašu doménu

SPF (Sender Policy Framework, RFC 7208) je záznam TXT na vašej doméne, ktorý vymenúva servery a služby oprávnené posielať za ňu poštu. Typický záznam vyzerá takto:

example.com.  TXT  "v=spf1 include:_spf.google.com include:sendgrid.net ~all"

Najdôležitejší je koniec:

  • -all (fail): čo nie je uvedené, nie je oprávnené.
  • ~all (softfail): čo nie je uvedené, je podozrivé.
  • ?all (neutral): záznam sa nevyjadruje, takže príjemcovia nemajú takmer s čím pracovať.
  • +all: za vás smie posielať každý server na internete. To nie je správne v žiadnom prípade.

SPF má aj pevný limit: príjemca pri vyhodnotení vášho záznamu smie urobiť najviac 10 vyhľadávaní DNS pre mechanizmy ako include, a, mx a redirect (RFC 7208, časť 4.6.4). Každý nový marketingový nástroj pridá include a keď počet prekročí 10, SPF namiesto úspechu vráti chybu.

DKIM: podpis na každej správe

Pri DKIM (DomainKeys Identified Mail, RFC 6376) odosielajúci server podpíše každú správu súkromným kľúčom. Zodpovedajúci verejný kľúč je v DNS pod názvom selektora, takže príjemca overí, že správu nikto nezmenil a podpísal ju niekto, kto má váš kľúč.

Každá služba, ktorá za vás posiela (poskytovateľ schránok, CRM, fakturačný nástroj), by mala podpisovať vlastným selektorom. Záznam DNS vyzerá takto:

selector1._domainkey.example.com.  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBgkq..."

DKIM zlyháva potichu. Pošta odchádza ďalej bez podpisu a nikto si to nevšimne, kým správy nezačnú končiť v spame alebo kým poskytovateľ nesprísni pravidlá.

DMARC: politika, ktorá všetko spája

DMARC dnes definuje RFC 9989 z mája 2026, ktoré nahradilo staršie RFC 7489. Overuje, či SPF alebo DKIM prešlo pre doménu, ktorá sa zhoduje (je zarovnaná) s viditeľnou adresou From, a príjemcom hovorí, čo robiť, keď neprejde ani jedno:

_dmarc.example.com.  TXT  "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"
  • p=none: len sledovanie. Pošta, ktorá neprejde, sa doručí ako obvykle a vy dostávate hlásenia.
  • p=quarantine: s poštou, ktorá neprejde, sa má zaobchádzať ako s podozrivou, zvyčajne ide do spamu.
  • p=reject: pošta, ktorá neprejde, sa má odmietnuť.

Na adresu rua chodia súhrnné hlásenia od veľkých poskytovateľov schránok. Ukazujú každý zdroj, ktorý posiela poštu pod vaším menom, vrátane tých, na ktoré ste zabudli, a tých, ktoré nie sú vaše.

Ako overiť vlastnú doménu

Spustite tieto príkazy v ľubovoľnom termináli (example.com nahraďte svojou doménou):

dig +short TXT example.com | grep spf1
dig +short TXT _dmarc.example.com
dig +short TXT selector1._domainkey.example.com

Pri DKIM potrebujete názov selektora. Otvorte ľubovoľný mail, ktorý vaša firma poslala, zobrazte pôvodný zdrojový text správy a nájdite hlavičku DKIM-Signature: a v nej hodnotu s=. V tých istých hlavičkách nájdete aj Authentication-Results: s spf=pass, dkim=pass a dmarc=pass, prípadne neúspechy.

Čo skontrolovať:

  1. Práve jeden záznam SPF (2 záznamy v=spf1 SPF úplne rozbijú).
  2. Koniec SPF ~all alebo -all, nie ?all ani +all.
  3. Podpis DKIM na pošte z každej služby, ktorá za vás posiela.
  4. Záznam DMARC, ktorý existuje a má adresu rua, ktorú niekto naozaj číta.
  5. Plán prechodu z p=none na p=quarantine alebo p=reject.

Časté chyby a ako ich opraviť

2 záznamy SPF. Často ostanú po zmene poskytovateľa. Zlúčte ich do jedného.

Priveľa vyhľadávaní. Odstráňte služby, ktoré už nepoužívate, a kde to poskytovateľ dovolí, nahraďte include konkrétnymi rozsahmi.

Zabudnutí odosielatelia. Nástroj na newslettre alebo helpdesk, ktorý posiela bez DKIM, neprejde DMARC, keď ho začnete vynucovať. Najprv niekoľko týždňov čítajte hlásenia DMARC, potom zapnite DKIM pre každý legitímny zdroj.

Trvalé p=none. Sledovanie je správny prvý krok, ale p=none žiada príjemcov, aby podvrhnutú poštu aj tak doručili. Keď hlásenia ukážu, že všetka skutočná pošta prechádza, prejdite na p=quarantine a potom na p=reject.

Zaparkované a nepoužívané domény. Aj doménu, z ktorej nikdy neodchádza pošta, môže niekto zneužiť ako odosielateľa. Nastavte na nej v=spf1 -all a záznam DMARC s p=reject.

Tieto záznamy sú dôležité aj pre doručiteľnosť. Gmail, Yahoo a Outlook ich dnes vyžadujú od hromadných odosielateľov, o čom píšeme v článku požiadavky Gmailu a Yahoo na odosielateľov. Zároveň sú jednou z vrstiev obrany proti podvodom s falošnými faktúrami, ktoré opisujeme v článku ako funguje kompromitácia firemnej pošty.

Krátky kontrolný zoznam

  • Jeden záznam SPF, ktorý končí ~all alebo -all a má menej ako 10 vyhľadávaní.
  • Podpis DKIM zapnutý pre každú službu, ktorá za vás posiela.
  • DMARC zverejnený a hlásenia chodia do schránky, ktorú niekto sleduje.
  • Keď sú hlásenia čisté, politika smeruje k p=reject.
  • Zaparkované domény zamknuté cez -all a p=reject.

Ako pomáha Datahorses

Overovanie pošty je jedna z oblastí, ktoré každý deň strážime zvonku, spolu s vašimi doménami, certifikátmi a webom. Keď sa zmení záznam SPF, zmizne selektor DKIM alebo sa oslabí DMARC, posúdi to náš špecialista a vy dostanete presné záznamy na opravu. Úplný zoznam nájdete v časti čo strážime a v časti bez prístupu do vašich systémov zistíte, prečo nepotrebujeme žiadne prístupy. Širší pohľad ponúka článok čo je monitoring vonkajšej útočnej plochy.

Ďalšie články

Všetky články