zranitelnost.cz

Návod · oblast 03 · DNS a e-mail

Podvržené e-maily: jak nastavit SPF, DKIM a DMARC

Dokud tyhle tři DNS záznamy nemáte v pořádku, může kdokoli na světě poslat vašim zákazníkům e-mail, který vypadá, že je od vás. Nepotřebuje k tomu přístup do vaší pošty ani na váš server, stačí mu znát vaši doménu. Tady je celý postup, jak to zavřít.

aktualizováno 13. 9. 2026 · čtení na 8 minut · žádné placené nástroje

Proč to řešit

Kvůli vašim zákazníkům. Podvodník nemusí nic prolamovat. Napíše e-mail, jako odesílatele uvede vaši adresu a pošle ho vašim klientům: změnili jsme bankovní spojení, tady je opravená faktura, potvrďte prosím platbu. Škoda vznikne jim, ale jméno, kterému přestanou věřit, je vaše.

A kvůli vaší vlastní doručitelnosti. Gmail a Yahoo od roku 2024 u odesílatelů většího objemu pošty (řádově tisíce zpráv denně) vyžadují SPF, DKIM i DMARC, Microsoft se přidal v roce 2025. Bez nich končí ve spamu i potvrzení objednávky nebo faktura, kterou zákazník čeká.

Zároveň jde o jednu z nejlevnějších oprav, jaká v bezpečnosti webu existuje: nic se neinstaluje, nic se neprogramuje, nic neplatíte. Přidáte tři záznamy v DNS u toho, kdo vám hostuje doménu.

Tři záznamy, tři různé úlohy

Často se pletou, protože se probírají jedním dechem. Každý přitom dělá něco jiného a samotný nestačí:

  • SPF je seznam serverů, které smí za vaši doménu posílat poštu. Odpovídá na otázku „přišlo to odtud, odkud to přijít mělo?“
  • DKIM je digitální podpis, kterým odesílající server každou zprávu opatří. Odpovídá na otázku „nebyla zpráva cestou podvržená nebo upravená?“
  • DMARC je pokyn, co si má příjemce počít se zprávou, která neprošla, a adresa, kam vám má o tom posílat hlášení. Odpovídá na otázku „a co s tím teď?“

tohle se plete nejčastěji

SPF a DKIM samy nikoho nechrání, jen dávají příjemci podklady. Bez DMARC se každý poštovní server rozhodne sám, co s podvrženou zprávou udělá, a většinou ji doručí. Teprve DMARC řekne „tohle zahoď“. A platí i druhá strana: DMARC projde, jen když prošel SPF nebo DKIM a zároveň doména v něm odpovídá doméně, kterou příjemce vidí jako odesílatele. Proto nestačí, že vám pošta „normálně funguje“.

krok 1

Zjistěte, jak to máte teď

Nejrychleji přes bezplatný sken na této stránce: v oblasti „DNS a e-mail“ uvidíte, jestli máte SPF, jak tvrdou má politiku, jestli jsme našli DKIM podpis a v jakém režimu je DMARC. Kdo je radši v terminálu, zjistí totéž třemi příkazy:

SPFdig +short TXT vase-firma.cz
DMARCdig +short TXT _dmarc.vase-firma.cz
DKIMdig +short TXT google._domainkey.vase-firma.cz

Na Windows: nslookup -type=TXT _dmarc.vase-firma.cz. U DKIM musíte znát selektor, který používá váš poskytovatel pošty (google, selector1, s1, …).

Než začnete cokoli měnit, sepište si všechny služby, které za vás posílají e-maily. Skoro vždycky je jich víc, než si firma pamatuje: poštovní hosting, e-shop s potvrzeními objednávek, fakturační systém, rezervační formulář na webu, e-mailingový nástroj, CRM, helpdesk. Na tomhle seznamu stojí celý zbytek nastavení: na koho zapomenete, tomu v poslední fázi přestanou e-maily procházet.

krok 2

SPF: jeden záznam, všichni odesílatelé

SPF je obyčejný TXT záznam na vaší doméně. Pro firmu, která má poštu na Google Workspace a nic jiného neodesílá, vypadá takhle:

typTXT
název@ (tedy vase-firma.cz)
hodnotav=spf1 include:_spf.google.com -all

Čtyři pravidla, na kterých to stojí:

  • Jeden jediný SPF záznam na doménu. Nikdy dva. Další odesílatele přidáváte jako další include: do stávajícího záznamu, ne jako nový TXT.
  • Na konci patří -all. To znamená „odjinud to není ode mě“. Mírnější ~all se hodí na přechodné období, dokud si nejste jistí seznamem odesílatelů. +all nepoužívejte nikdy, povoluje celý internet.
  • Maximálně 10 DNS dotazů. Každý include: spotřebuje minimálně jeden. Po překročení limitu je celý záznam neplatný. Když se blížíte, vyhoďte služby, které už nepoužíváte.
  • Hodnoty berte z dokumentace poskytovatele, ne z návodů na internetu. Google Workspace používá include:_spf.google.com, Microsoft 365 include:spf.protection.outlook.com. U českých hostingů a e-mailingových nástrojů si přesnou hodnotu najděte v jejich nápovědě, čísla IP adres i domény se časem mění.

Se dvěma službami pak záznam vypadá třeba takto, pořadí nehraje roli:

hodnotav=spf1 include:_spf.google.com include:spf.nastroj-na-newslettery.cz -all

krok 3

DKIM: podpis, který přežije přeposlání

DKIM klíč negenerujete sami. Zapnete ho v administraci poštovní služby (u Google Workspace v konzoli pro správu pod Apps → Gmail → Authenticate email, u Microsoftu 365 v Defender portálu) a ta vám vypíše, co vložit do DNS. Typicky jeden TXT záznam s veřejným klíčem:

typTXT
názevgoogle._domainkey
hodnotav=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQ… (klíč od poskytovatele)

U Microsoftu 365 se místo toho zadávají dva CNAME záznamy, selector1._domainkey a selector2._domainkey. Princip je stejný.

Klíčové je zapnout DKIM u každé služby, která za vás posílá, ne jen u hlavní pošty. Důvod je praktický: jakmile příjemce váš e-mail přepošle jinam, SPF se rozbije, protože zpráva přiletí ze serveru toho, kdo ji přeposlal. DKIM podpis přeposlání přežije. Když má zpráva oboje, drobnosti jako přeposlání nebo firemní filtry ji nepoloží.

Při stěhování pošty k jinému poskytovateli po sobě ukliďte: nechat v DNS veřejný klíč služby, kterou už nepoužíváte, je zbytečná otevřená vrátka.

krok 4

DMARC: ve třech fázích, ne naráz

Tady se dělá největší chyba, a to z dobrého úmyslu: nastavit hned tvrdé odmítání. Pokud jste přehlédli jednoho legitimního odesílatele, začnete zahazovat vlastní faktury. Postupujte proto ve třech fázích.

Fáze A, monitorování (2–4 týdny). Nic se nezačne blokovat, jen vám začnou chodit denní hlášení o tom, kdo vaším jménem posílá:

typTXT
název_dmarc
hodnotav=DMARC1; p=none; rua=mailto:dmarc@vase-firma.cz

Hlášení přijdou jako XML v příloze. Nečtěte je ručně, nahrajte je do kteréhokoli bezplatného prohlížeče DMARC hlášení, nebo si na rua nechte vystavit adresu od takové služby.

V hlášeních hledáte jediné: legitimní odesílatele, kterým ověření neprochází. Každého takového dopište do SPF, zapněte mu DKIM a čekejte, dokud nejsou data čistá.

Fáze B, karanténa (2 týdny). Podvržené zprávy začnou padat do spamu, ale nezmizí, takže se z případného přehlédnutí dá vycouvat. Změníte jedinou hodnotu: p=quarantine.

Fáze C, odmítání (cílový stav). Podvržené zprávy se vašim zákazníkům vůbec nedoručí. Přidejte i politiku pro subdomény, jinak je nechráníte:

hodnotav=DMARC1; p=reject; sp=reject; rua=mailto:dmarc@vase-firma.cz

Celý přechod trvá podle objemu pošty čtyři až osm týdnů, ale práce je v tom hodina. Zbytek je čekání na data.

krok 5

Nezapomeňte na domény, ze kterých nic neposíláte

Parkované domény, staré názvy firmy, varianty s pomlčkou i .com verze koupená „pro jistotu“: právě tyhle jsou pro podvodníka nejpohodlnější, protože je nikdo nehlídá. Pošta z nich nikdy nechodí, takže si můžete dovolit nejtvrdší nastavení hned, bez fází:

MX0 . (tzv. null MX, doména nepřijímá poštu)
TXT @v=spf1 -all
TXT _dmarcv=DMARC1; p=reject; sp=reject

krok 6

Ověřte, že to skutečně funguje

Změny v DNS se propisují od několika minut po několik hodin podle TTL záznamu. Potom si nastavení ověřte ze dvou stran.

Že záznamy vidí svět: pusťte znovu příkazy z prvního kroku, nebo si nechte doménu proskenovat a podívejte se, že oblast „DNS a e-mail“ svítí zeleně.

Že prochází i skutečná zpráva: pošlete si e-mail na Gmail, otevřete u něj „Zobrazit původní“ a v hlavičce hledejte tři slova: spf=pass, dkim=pass, dmarc=pass. Zkuste to z každé služby, která za vás posílá, tedy i test objednávky z e-shopu a testovací newsletter. Vyzkoušet jen ruční e-mail z pošty je nejčastější důvod, proč se problém objeví až po přepnutí na reject.

Pět chyb, které v kontrolách vidíme nejčastěji

Dva SPF záznamy vedle sebe

Typicky když k poštovnímu hostingu přidáte e-mailing a založíte mu vlastní TXT záznam. Každý z nich je sám o sobě v pořádku, dohromady jsou ale neplatné a ověřování selže úplně. Musí být jeden jediný záznam se všemi include.

SPF končí na +all

Doslova říká „posílat za mě smí kdokoli“. Vidíme to u záznamů, které někdo kdysi zkopíroval z fóra. Je to horší než žádný SPF, protože vypadá jako ochrana a není.

DMARC roky visí na p=none

Monitorovací režim jen počítá podvržené zprávy, neblokuje je. Je to správný začátek, ale pokud se z něj do několika týdnů neposunete dál, doména zůstává otevřená.

E-mailingový nástroj v SPF, ale bez DKIM

Dokud e-mail letí přímo, projde na SPF. Jak ho příjemce přepošle na jinou adresu, SPF se rozbije a bez DKIM podpisu nemá zpráva čím projít.

Zapomenuté domény a subdomény

Staré doménové varianty a subdomény bez vlastní politiky jsou pro podvodníky pohodlnější než hlavní doména. Řeší to sp= v DMARC a politika i na doménách, ze kterých nic neposíláte.

Nechte si s tím poradit

Skládání SPF pro pět různých služeb je otravná práce, ve které se dá snadno přehlédnout limit deseti dotazů. Vyplňte do následujícího promptu svoje služby a současné záznamy a nechte si návrh připravit, ať už v ChatGPT, Claude, nebo kdekoli jinde. Stejné prompty přikládáme u nálezů v placeném reportu.

AI prompt · zkopírujte do ChatGPT nebo Claude

Spravuji doménu vase-firma.cz. Poštu máme u [poskytovatel], newslettery posíláme přes [nástroj] a fakturační systém odesílá z [systém]. Tady jsou moje současné DNS záznamy: [vlož výstup dig +short TXT vase-firma.cz a dig +short TXT _dmarc.vase-firma.cz]. Navrhni mi přesné hodnoty jednoho SPF záznamu, který pokryje všechny tyhle odesílatele a zůstane pod limitem 10 DNS dotazů, a k tomu DMARC záznam pro monitorovací fázi včetně adresy na hlášení. U každého záznamu napiš typ, název a hodnotu přesně tak, jak je vložím do DNS, a nakonec mi napiš, jak si po propsání změn ověřím, že SPF, DKIM i DMARC procházejí.

Výsledek si vždycky ověřte postupem z kroku 6. Hodnoty include: si navíc zkontrolujte v dokumentaci poskytovatele, tohle je přesně ta oblast, kde si jazykové modely rády vymyslí doménu, která neexistuje.

Jak je na tom vaše doména?

E-mail je jen jedna ze šesti oblastí, které kontrolujeme. Zadejte doménu a během chvíle uvidíte i certifikáty, subdomény a bezpečnostní hlavičky. Zdarma a bez registrace.