Modul 4 · 4.3
SPF: kto smie posielať poštu v mene vašej domény?
Modul 4: Záznamy pre e-mail · Čas čítania: 10 min
Cieľ lekcie: Po tejto lekcii dokážete prečítať SPF záznam, správne doň pridať službu a vyhnúť sa trom najznámejším SPF chybám: dva záznamy, +all a viac ako desať vyhľadávaní.
Kľúčové pojmy: SPF, v=spf1, mechanizmus (a, mx, ip4, ip6, include), kvalifikátor (+ - ~ ?), all, jeden SPF záznam, limit 10 DNS vyhľadávaní, odosielateľ obálky (Return-Path)
Problém: každý môže použiť váš názov
E-mail bol vymyslený v osemdesiatych rokoch pre malý, priateľský internet. Každý mailový server dokáže odoslať poštu s odosielateľom info@example.com, aj keď s doménou example.com nemá vôbec nič spoločné. Podvodníci to vďačne využívajú.
SPF (Sender Policy Framework, RFC 7208) je prvý krok, ako tomu zabrániť. V SPF zázname uvediete, ktoré servery smú posielať poštu v mene vašej domény. Prijímajúci mailový server pri každej prichádzajúcej správe skontroluje: prichádza táto pošta zo servera, ktorý je na zozname?
Predstavte si to ako zoznam hostí pri dverách. Vrátnik (prijímajúci mailový server) si vyžiada zoznam od vašej domény a skontroluje, či je návštevník (odosielajúci server) naň zapísaný.
Ako vyzerá SPF záznam?
SPF záznam je TXT záznam na vašej doméne, ktorý začína reťazcom v=spf1:
example.com. 3600 IN TXT "v=spf1 mx ip4:192.0.2.25 include:spf.mailer.example ~all"Čítate ho zľava doprava. Príjemca prejde jednotlivé časti postupne a zastaví sa pri prvej, ktorá sedí.
| Časť | Význam |
|---|---|
v=spf1 | Toto je SPF záznam. Musí byť na začiatku. |
a | Server(y), na ktoré ukazuje záznam A/AAAA vašej domény, smú posielať poštu. |
mx | Servery z vašich MX záznamov smú posielať poštu. |
ip4:192.0.2.25 | Táto IPv4 adresa smie posielať poštu. Môže to byť aj rozsah: ip4:192.0.2.0/24. |
ip6:2001:db8::25 | To isté pre IPv6. |
include:spf.mailer.example | Všetky servery, ktoré sú uvedené v SPF zázname domény spf.mailer.example, smú tiež. Takto pridáte externú službu. |
~all | Všetky ostatné servery: podozrivé. Vždy na konci. |
Zakončenie: ~all, -all, ?all alebo +all
Pred každou časťou môže byť znak, ktorý určuje, čo sa stane, ak sedí. Pri all (ktoré sedí vždy) tento znak rozhoduje:
| Zakončenie | Názov | Význam |
|---|---|---|
-all | fail | Ostatné servery nesmú. Príjemcovia môžu poštu odmietnuť. |
~all | softfail | Ostatné servery sú podozrivé. Pošta sa väčšinou prijme, ale je väčšia šanca, že bude označená ako spam. |
?all | neutral | Žiadne vyjadrenie. Takmer nepoužiteľné. |
+all | pass | Akýkoľvek server na svete smie posielať poštu vo vašom mene. Nikdy nepoužívať. |
Ak nie je uvedený žiadny znak, platí +. mx teda znamená +mx.
Ktoré zvoliť? ~all je bezpečná predvoľba. -all je prísnejšie a vhodné, ak viete s istotou, že všetci vaši odosielatelia sú v zázname uvedení. Ak používate DMARC (lekcia 4.5), konečný výsledok nakoniec určuje politika DMARC; mnohí správcovia preto volia ~all.
Chyba 1: dva SPF záznamy
Pre jednu doménu smie existovať len jeden SPF záznam. Ak ich príjemca nájde dva, výsledkom je chyba (permerror) a vaše SPF sa vôbec nezohľadňuje. To je horšie, ako keby ste SPF nemali vôbec.
V praxi sa toto často pokazí. Služba na rozosielanie newsletterov alebo Microsoft 365 povie „pridajte tento SPF záznam“ a zrazu vedľa pôvodného pribudne druhý záznam v=spf1. Riešenie: novú službu pridajte do existujúceho záznamu.
Nesprávne:
"v=spf1 mx include:spf.oldhost.example ~all"
"v=spf1 include:spf.protection.outlook.com -all"Správne:
"v=spf1 mx include:spf.oldhost.example include:spf.protection.outlook.com ~all"Pri zlučovaní dávajte pozor, aby ste neodstránili servery, ktoré ešte stále používate. Ak vaša webstránka posiela poštu cez server hostingovej spoločnosti, musí tam zostať, aj keď bežná pošta chodí cez Microsoft 365. Hostingový balík má často už predvolené SPF s include hostingovej spoločnosti (pri WebOké je to napríklad include:webawere.nl); ponechajte ho, pokiaľ cez tento server odosiela poštu vaša webstránka alebo formuláre.
Chyba 2: +all alebo príliš voľný záznam
+all na konci, alebo obrovský rozsah ako ip4:0.0.0.0/0, znamená, že smie posielať poštu ktokoľvek. Vtedy vaše SPF už vôbec nič nechráni a spamové filtre to vnímajú ako zlé znamenie.
Chyba 3: viac ako desať vyhľadávaní
Na overenie SPF záznamu musí príjemca niekedy položiť ďalšie DNS otázky. Každé include, a, mx, exists, ptr a redirect stojí jedno vyhľadávanie a include navyše počíta aj všetky vyhľadávania v zázname, na ktorý odkazuje. Podľa RFC 7208 nesmie celkový súčet presiahnuť desať. Ak sa tak stane, výsledkom je permerror a SPF zlyhá.
ip4 a ip6 žiadne vyhľadávanie nestoja. all tiež nie.
Okrem toho smú maximálne dve vyhľadávania skončiť „naprázdno“ (názov, ktorý neexistuje, alebo bez odpovede). Aj include smerujúci na službu, ktorú už dávno nepoužívate a ktorá svoj záznam odstránila, tak môže spôsobiť problémy.
Ak používate veľa služieb, prepočítajte si to pomocou nástroja na kontrolu SPF (lekcia 8.3) a odstráňte služby, ktoré už nevyužívate.
Čo SPF nerobí
SPF kontroluje odosielateľa obálky: technickú adresu odosielateľa (Return-Path), ktorú mailové servery používajú medzi sebou. Tá nie je vždy rovnaká ako adresa „Od:“, ktorú vidíte vo svojom poštovom programe. Služba na rozosielanie newsletterov často odosiela s vlastným Return-Path. Samotné SPF teda nezastaví každú falošnú adresu odosielateľa. Na to slúžia DKIM (lekcia 4.4) a DMARC (lekcia 4.5).
SPF sa tiež poruší pri presmerovaní: ak poštu automaticky presmerujete na inú adresu, príde ku konečnému príjemcovi zo servera, ktorý nie je vo vašom SPF zázname.
Prečo na tom záleží
Veľkí poskytovatelia pošty sú prísnejší. Od februára 2024 Gmail a Yahoo vyžadujú, aby každý, kto posiela poštu, mal aspoň SPF alebo DKIM, a kto posiela veľa pošty (viac ako približne 5 000 denne), musí mať SPF, DKIM aj DMARC. Microsoft od mája 2025 stanovuje rovnakú požiadavku pre Outlook.com, Hotmail a Live.com. Aj keď posielate málo pošty, dobrý SPF záznam pomáha vyhnúť sa priečinku so spamom.
V praxi: ako to vyzerá v paneli
V tomto príklade používame DirectAdmin. V sekcii DNS správa kliknite na ikonu ceruzky za TXT záznamom, ktorý začína reťazcom v=spf1. DirectAdmin otvorí pomocníka pre SPF: pri položke Neplatná doména zadáte doménu služby (bez include:), pri položke Režim vyberiete SoftFail (~all) alebo Zlýhanie (-all). V spodnej časti vidíte celý záznam. Môj WebOké má podobného pomocníka pre SPF na karte DNS.
Iné panely takéhoto pomocníka nemusia mať. Vtedy upravujete TXT záznam ako bežný text; obsah je úplne rovnaký.
Zhrnutie
- SPF je TXT záznam s
v=spf1, ktorý určuje, ktoré servery smú posielať poštu v mene vašej domény. - Presne jeden SPF záznam na doménu. Nová služba? Doplňte existujúci záznam.
- Zakončite reťazcom
~allalebo-all, nikdy reťazcom+all. - Maximálne desať DNS vyhľadávaní (
include,a,mx,exists,ptr,redirect),ip4/ip6sa nepočítajú. - SPF kontroluje odosielateľa obálky; pre skutočnú ochranu potrebujete aj DKIM a DMARC.
Kvíz
Úloha
Úloha Z4.3: Vyhľadanie SPF. Vyhľadajte SPF záznam domény google.com (alebo vašej vlastnej domény). Vložte celý záznam a doplňte, čím sa končí (~all, -all, ?all alebo +all). Pri vlastnej doméne úloha zároveň overí, či máte presne jeden SPF záznam.
Úloha O4.3: Vlastné nastavenie vo vašej cvičnej zóne. V cvičnej zóne použijete fiktívnu službu; pri svojej skutočnej doméne použijete skutočný include, ktorý vám poskytne váš poskytovateľ pošty (napríklad include:_spf.google.com). Vo vašej cvičnej zóne vytvorte SPF záznam, ktorý povolí: MX servery zóny (<code>.dnspractice.eumx), adresu 192.0.2.25 a cvičnú službu _spf.mailsuite-demo.dnspractice.eu. Ostatné servery sú podozrivé alebo nepovolené, záznam teda končí reťazcom ~all alebo -all.
Úloha O4.3
Túto úlohu urobíte vo vlastnej cvičnej zóne: skutočnej DNS zóne na menných serveroch WebOké, určenej iba pre vás. Prihláste sa svojou e-mailovou adresou. Dostanete prihlasovací odkaz e-mailom a potom sa vrátite späť na túto lekciu. Vašu adresu používame iba pre účely kurzu.
Ďalšie čítanie
Kroky v týchto článkoch platia pre panely WebOké; v iných paneloch to funguje podobne.
- Návod na DirectAdmin 5.7: SPF nastavenie a dopĺňanie
- Ako funguje záznam SPF v DNS?
- Pridanie alebo zmena záznamu SPF v DirectAdmine
- Príručka WebOké 5.5: DNS pomôcky: MX, SPF, DMARC, CAA a SRV
- RFC 7208 (SPF), najmä odsek 4.6.4 (limit desať vyhľadávaní a dve prázdne vyhľadávania)
