DKIM patří mezi základní stavební kameny bezpečného odesílání e-mailů z vlastní domény. Když je nasazený správně, pomáhá doručitelnosti, snižuje riziko podvržených zpráv a dobře doplňuje SPF i DMARC. Pro majitele webu je důležitý hlavně proto, že bez něj mohou končit zprávy z formulářů, objednávek nebo notifikací častěji ve spamu.
Co je DKIM
DKIM znamená DomainKeys Identified Mail. Odesílající server při odchodu zprávy vytvoří kryptografický podpis vybraných částí e-mailu. Příjemce si pak v DNS dohledá veřejný klíč domény a ověří, že podpis sedí. Když sedí, je jasné, že zprávu po cestě nikdo neupravil a že podpis vytvořil systém, který měl k doméně odpovídající soukromý klíč.
DKIM sám neříká, zda je zpráva obchodně důvěryhodná nebo zda neobsahuje spam. Řeší ale technickou důvěryhodnost původu a integrity zprávy, což je pro mailservery důležitý signál.
Jak DKIM funguje v praxi
Při odeslání e-mailu přidá mailserver do hlavičky podpis, obvykle v poli DKIM-Signature. V něm bývá uvedená doména, použitý selektor a algoritmus. Příjemce podle těchto údajů najde v DNS TXT záznam, ve kterém je veřejný klíč. Pomocí něj ověří, zda obsah zprávy odpovídá podpisu.
To je praktické hlavně tam, kde pošta putuje přes více serverů nebo služeb. Když se po cestě změní podepsané části zprávy, ověření selže. Díky tomu příjemce pozná, že s e-mailem někdo manipuloval nebo že je podpis nastavený chybně.
Co je DKIM selektor a kde ho najdete
Selektor je název konkrétního DKIM klíče. Umožňuje mít pro jednu doménu více klíčů současně, třeba při rotaci nebo při oddělení různých odesílacích služeb. DNS záznam se pak typicky skládá jako selector._domainkey.vasedomena.cz.
Poskytovatel e-mailu nebo SMTP služby vám obvykle dá přesný hostname i hodnotu TXT záznamu. Typický zápis může vypadat zjednodušeně takto:
selector1._domainkey.example.cz TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkq..."
Nejdůležitější část je parametr p=, tedy veřejný klíč. Ten musí být v DNS kompletní a bez nechtěných úprav.
Jak DKIM nastavit bez zbytečných chyb
- Zjistěte, který systém za doménu skutečně odesílá poštu: běžné schránky, newslettery, CRM, e-shop nebo webové formuláře.
- V administraci dané služby vyhledejte DKIM nastavení a zkopírujte přesný DNS záznam.
- Vložte TXT záznam do DNS zóny domény pod správný hostname se selektorem.
- Počkejte na propsání DNS a ověřte, že služba už záznam vidí jako platný.
- Odešlete testovací e-mail a zkontrolujte, že se v hlavičkách zobrazuje
dkim=pass.
Nejčastější chyby u DKIM
- Veřejný klíč je v DNS zkrácený, rozbitý uvozovkami nebo špatně vložený po částech.
- Záznam je vložený pod špatný hostname, třeba bez selektoru nebo bez
._domainkey. - Pošta se odesílá z jiné služby, než pro kterou byl klíč nasazený.
- Po migraci e-mailu zůstane starý selektor v DNS, ale nový server podepisuje jiným klíčem.
- Po cestě se upravuje obsah zprávy způsobem, který rozbije podpis, typicky u některých přeposílání nebo mailing listů.
Jak ověřit, že DKIM opravdu funguje
První kontrola je v samotné odesílací službě. Mnoho poskytovatelů po vložení DNS záznamu ukáže stav ověření. Druhá kontrola je v hlavičkách doručeného e-mailu. U běžných poštovních služeb najdete výsledek autentizace v řádcích typu Authentication-Results, kde bývá výsledek dkim=pass nebo dkim=fail.
Když výsledek neprojde, nejčastější příčina bývá v DNS zápisu nebo v tom, že e-mail ve skutečnosti odchází z jiného serveru. U změn DNS navíc počítejte s tím, že se nové hodnoty nemusí projevit všude hned. Proto má smysl sledovat i DNS propagaci.
DKIM, SPF a DMARC: proč patří k sobě
SPF říká, které servery smějí za doménu odesílat poštu. DKIM podepisuje samotnou zprávu. DMARC nad tím vyhodnocuje, zda se ověřená doména opravdu shoduje s adresou odesílatele a jak má příjemce naložit s neúspěšnými zprávami. Nejlepší výsledek je kombinace všech tří prvků, protože každý řeší jinou část problému.
Pro menší web bývá rozumné začít takto: nejdřív uklidit SPF záznam, potom nasadit DKIM u všech legitimních odesílacích služeb a nakonec zkontrolovat nebo zpřísnit DMARC politiku.
Na co myslet při migraci hostingu nebo e-mailu
DKIM často selže po migraci, protože web už běží jinde, ale pošta stále odchází přes starý SMTP server, nebo naopak. Pokud měníte hosting, mailserver nebo externí e-mailovou službu, berte DKIM jako součást checklistu spolu s MX, SPF a případně DMARC. Nestačí přesunout web, je nutné ověřit i to, kdo a jak poštu podepisuje.
To platí i pro kontaktní formuláře. Jestli web odesílá notifikace přes PHP mail nebo vlastní SMTP, musí být jasné, který server podepisuje zprávy a zda k tomu má správný DKIM klíč.
Praktické shrnutí
DKIM není jen technická drobnost do DNS. Je to praktický mechanismus, který pomáhá potvrdit pravost a integritu e-mailů z vaší domény. Když je nasazený správně, zlepšuje doručitelnost a snižuje chaos při odesílání z více systémů. Pro většinu webů je nejlepší držet přehled, kdo poštu odesílá, klíče pravidelně revidovat a po každé větší změně hostingu nebo e-mailové služby znovu ověřit, že podpis prochází.