4. modulis · 4.2
SPF praksē: visu sūtītāju apzināšana
4. modulis: Nogādājamība: SPF, DKIM un DMARC praksē · Lasīšanas laiks: 12 minūtes
Mērķis: Pēc šīs nodarbības Jūs varēsiet atrast visus pakalpojumus, kas sūta pastu Jūsu domēna vārdā, apkopot tos vienā SPF ierakstā, rekursīvi saskaitīt meklējumus līdz desmit robežai un apzināti izvēlēties starp ~all un -all.
Pamatjēdzieni: sūtītāju uzskaite, envelope sender (Return-Path), viens SPF ieraksts, include, redirect, 10 DNS meklējumu limits (RFC 7208, 4.6.4. punkts), tukši meklējumi (void lookups, ne vairāk kā 2), rekursīva skaitīšana, permerror, flattening, SPF apakšdomēniem, SPF domēnam, kas nesūta pastu, ~all un -all
Atkārtojums
SPF ieraksts ir TXT ieraksts Jūsu domēnā, kas sākas ar v=spf1 un uzskaita, kuri serveri drīkst sūtīt pastu Jūsu domēna vārdā. Uzbūve, zīmes + - ~ ? un trīs biežākās kļūdas (divi ieraksti, +all, vairāk nekā desmit meklējumi) ir aprakstītas DNS kursa 4.3. nodarbībā. Izlasiet to vispirms, ja SPF Jums ir jauns jēdziens. Šī nodarbība ir par sarežģītāko daļu: praksē gandrīz neviens precīzi nezina, kas viss sūta pastu viņa domēna vārdā.
1. solis: uzskaite
SPF darbojas tikai tad, ja tajā ir iekļauti visi sūtītāji. Ja aizmirsīsiet kādu no tiem, viņa pasts nonāks surogātpastā vai tiks noraidīts, tiklīdz pastiprināsiet DMARC. Tāpēc izejiet cauri šim sarakstam. Vidējā mazā uzņēmumā ātri sanāk pieci vai seši:
| Sūtītāja veids | Piemēri | Kā to noskaidrot? |
|---|---|---|
| Jūsu parastā pastkaste | Jūsu hostinga uzņēmuma pasta serveris, Microsoft 365, Google Workspace | Apskatieties, kurp norāda Jūsu MX un caur ko Jūsu pasta programma sūta pastu |
| Jūsu vietne | kontaktformas, paroļu e-pasti, interneta veikala pasūtījumu apstiprinājumi | Pajautājiet vietnes izstrādātājam, apskatieties WordPress vai interneta veikala iestatījumos |
| Jaunumu vēstuļu pakalpojums | Mailchimp, Brevo, Laposta, MailerLite | Apskatieties savos abonementos |
| Grāmatvedība un rēķini | grāmatvedības programma, kas sūta rēķinus Jūsu vārdā | Nosūtiet sev rēķinu un izlasiet galvenes rindas |
| Cita programmatūra | CRM, tikšanos plānotājs, atbalsta dienests, aptauju rīks, maksājumu pakalpojums | Pajautājiet kolēģiem |
| Ierīces | printeris vai skeneris, kas skenē uz e-pastu, kamera vai trauksmes sistēma | Parasti caur Jūsu parasto pasta serveri; pārbaudiet to |
Divi labi veidi, kā tos atrast:
- Lasiet galvenes rindas. No katras sistēmas nosūtiet sev e-pastu (rēķinu, paroles atjaunošanu, testa jaunumu vēstuli) un galvenes rindās apskatieties
Return-PathunAuthentication-Results(1.5. nodarbība). Tur redzēsiet, caur kuru domēnu un serveri tas atnāca. - DMARC pārskati. Iestatiet DMARC uz
p=nonear pārskata adresi (4.4. nodarbība). Pēc dažām nedēļām pārskatos (4.5. nodarbība) redzēsiet katru serveri, kas sūtīja pastu Jūsu domēna vārdā, arī tos, kurus biijāt aizmirsis. Tā ir visuzticamākā uzskaite.
Ne katrs pakalpojums pieder Jūsu SPF
Šeit bieži rodas kļūdas. SPF skatās uz envelope sender (Return-Path), nevis uz From adresi. Daudzi jaunumu vēstuļu un sūtīšanas pakalpojumi sūta ar Return-Path savā pašu domēnā, piemēram, bounce-123@mail.mailer.example. Saņēmējs tad pārbauda mailer.example SPF ierakstu, nevis Jūsu. include no šī pakalpojuma Jūsu ierakstā tādā gadījumā neko nedod, tikai maksā vienu meklējumu.
Lai šis pakalpojums izturētu DMARC, viņam vajadzīgs DKIM paraksts ar Jūsu domēnu (4.3. nodarbība) vai savs Return-Path apakšdomēns, ko esat izveidojis (piemēram, bounce.example.com kā CNAME uz pakalpojumu). Tāpēc izlasiet pakalpojuma instrukciju, ko tas prasa. Ja tas saka "ievietojiet include: savā SPF", dariet to. Ja tas saka tikai "izveidojiet šos CNAME ierakstus DKIM un atlēcienu domēnam", tad Jūsu galvenajā ierakstā nekas nav jāmaina. Modulis 7 par to runā sīkāk.
2. solis: viens ieraksts, un pareiza skaitīšana
Visi sūtītāji ietilpst vienā ierakstā. Pieņemsim, ka Jūsu uzskaite dod šādu rezultātu: Jūsu hostinga uzņēmuma pasta serveris, Microsoft 365 dažiem darbiniekiem, Jūsu grāmatvedības programma un atbalsta dienests. Tad ieraksts, piemēram, izskatās šādi:
example.com. 3600 IN TXT "v=spf1 a mx include:spf.hosting.example include:spf.protection.outlook.com include:_spf.boekhoud.example include:mail.helpdesk.example ~all"Cik meklējumu tas ir? Saskaitiet katru a, mx, include, exists, ptr un redirect, un tad saskaitiet arī visu, kas ir ierakstos aiz katra include:
| Daļa | Meklējumi | Paskaidrojums |
|---|---|---|
a | 1 | example.com A/AAAA ieraksts |
mx | 1 | MX ieraksti (MX serveru adreses atsevišķi neskaitās desmit robežai, bet to drīkst būt ne vairāk kā desmit) |
include:spf.hosting.example | 1 + 0 | tur esošais ieraksts satur tikai ip4: un ip6: |
include:spf.protection.outlook.com | 1 + 0 | tāpat (tā tas bija 2026. gada 8. novembrī) |
include:_spf.boekhoud.example | 1 + 3 | tam ierakstam pašam ir trīs includes, katrs tikai ar IP adresēm |
include:mail.helpdesk.example | 1 + 2 | tam ierakstam ir include: uz divām mākoņa pakalpojumu sistēmām |
| Kopā | 11 | par vienu par daudz |
Pie 11 saņēmējs izdod permerror: viss SPF ieraksts tad netiek ņemts vērā, nevienam sūtītājam. Jūsu paša pasta servera e-pasts tiek novērtēts sliktāk, jo atbalsta dienests maksā trīs meklējumus. Un mānīgā lieta ir tā, ka Jūsu ieraksts šodien var būt 9, bet rīt 11, pat ja Jūs pats neko nemaināt, jo kāds pakalpojums paplašina savu ierakstu.
Turklāt: ne vairāk kā divi tukši meklējumi
RFC 7208 min arī void lookups: meklējumus, kas neko nedod (nosaukums neeksistē vai tam nav SPF vai adreses ieraksta). Vairāk nekā divi šādi gadījumi arī rada permerror. Tas visbiežāk notiek ar veciem include ierakstiem no pakalpojumiem, ko vairs neizmantojat un kas ir izdzēsuši savu ierakstu, vai ar a: uz serveri, kas vairs neeksistē. Tātad sakārtojiet to.
3. solis: atpakaļ zem desmit
Ja esat virs desmit, ir četri risinājumi, no labākā uz mazāk labo:
- Izņemiet to, kas nav vajadzīgs. Pakalpojumi, ko vairs neizmantojat. Pakalpojumi, kas sūta ar savu Return-Path (skatiet iepriekš) un tāpēc nepieder Jūsu SPF.
a, ja Jūsu vietne pati nesūta pastu.mx, ja Jūsu MX norāda uz pakalpojumu, kas jau ir Jūsu ierakstā arinclude. - Izmantojiet apakšdomēnu. Lieciet pakalpojumam sūtīt no
nieuws.example.comvaifactuur.example.com. Šim apakšdomēnam būs savs SPF ieraksts tikai ar šo pakalpojumu, un tas neietilpst Jūsu galvenā domēna desmit meklējumos. Salāgošana (alignment) DMARC (4.4. nodarbība) pēc noklusējuma darbojas arī apakšdomēniem. - Izmantojiet
ip4:unip6:saviem pašu pastāvīgajiem serveriem. Tie nemaksā meklējumu. Dariet to tikai adresēm, ko Jūs pats pārvaldāt un kas nemainās. - Flattening (visu includes aizstāšana ar IP adresēm, kas tur ir tagad). Tas skaitu novieto uz 0, bet ieraksts vairs nebūs pareizs, tiklīdz pakalpojums maina savas adreses, un lieli pakalpojumi to dara regulāri. Dariet to tikai ar rīku, kas to automātiski atjauno, un labāk vispār nedariet.
redirect vai include?
redirect= nozīmē: izmantot cita domēna SPF ierakstu šī ieraksta vietā. Tas maksā vienu meklējumu, tāpat kā include. Tas ir noderīgi, ja Jums ir daudz domēnu, kuriem jābūt tieši vienādai politikai: v=spf1 redirect=_spf.example.com katrā domēnā, un īstais ieraksts vienā vietā. Ierakstā ar redirect= nedrīkst būt all, jo tad redirect tiek ignorēts. Gmail pats to izmanto: gmail.com ir v=spf1 redirect=_spf.google.com.
4. solis: ~all vai -all?
Šī kursa ieteikums, tāds pats kā DNS kursā:
- Sāciet ar
~all(softfail). Pasts no servera, kas nav Jūsu ierakstā, tiek uzskatīts par aizdomīgu, bet parasti netiek uzreiz noraidīts. Ja aizmirstat kādu sūtītāju, kaitējums ir ierobežots. - Pārejiet uz
-all(fail), kad esat pārliecināts, ka visi sūtītāji ir ierakstā, piemēram, pēc dažu nedēļu DMARC pārskatu izskatīšanas, kad vairs nav nezināmu avotu.
Ar DMARC klāt, atšķirība ir mazāka nekā bieži tiek domāts. DMARC lemj, pamatojoties uz "SPF vai DKIM izturēja un ir salāgots". Softfail priekš DMARC ir vienkārši "neizturēja". Īstā aizsardzība tātad nāk no stingras DMARC politikas, nevis no -all. Daži saņēmēji noraida jau pirms DMARC novērtējuma, ja ir -all; tas ir iemesls izvēlēties -all tikai tad, kad Jūsu ieraksts tiešām ir pilnīgs.
Domēns, kas nekad nesūta pastu
Vai Jums ir domēni, kas nekad nesūta pastu (vecs zīmola nosaukums, drukas kļūdas domēns)? Tad aizsargājiet tos pret ļaunprātīgu izmantošanu ar:
example.org. IN TXT "v=spf1 -all"
_dmarc.example.org. IN TXT "v=DMARC1; p=reject"
example.org. IN MX 0 .Šeit -all ir uzreiz pareizi: nav neviena, kam drīkst sūtīt pastu. Pēdējā rinda ir null MX (RFC 7505): "šis domēns nesaņem pastu". example.com pats ir iestatīts tieši tāpat.
Praksē: kā tas izskatās panelī
WebOké hostinga pakotnē pēc noklusējuma ir v=spf1 a mx include:webawere.nl ~all. Ja pievienojat pakalpojumu, pielāgojat šo ierakstu (DirectAdmin: DNS Management, zīmulis aiz SPF ieraksta, lauks Include Domain; Mans WebOké: SPF palīgs cilnē DNS). Atstājiet include:webawere.nl, kamēr Jūsu pasts vai vietne darbojas caur šiem serveriem. Citiem pakalpojumu sniedzējiem noklusējuma include saucas citādi, bet princips ir tas pats: papildiniet, nevis veidojiet otru ierakstu.
Kopsavilkums
- Vispirms izveidojiet visu sūtītāju uzskaiti; DMARC pārskati un galvenes rindas palīdz to izdarīt.
- Pakalpojums ar savu Return-Path nepieder Jūsu SPF; tam vajadzīgs DKIM ar Jūsu domēnu.
- Skaitiet rekursīvi: katru
include,a,mx,exists,ptrunredirect, arī includes iekšienē. Virs desmit, vai vairāk nekā divi tukši meklējumi, ir permerror. - Atgriezieties zem desmit, sakārtojot un izmantojot apakšdomēnus; flattening tikai ar automātisku uzturēšanu.
- Sāciet ar
~all, pārejiet uz-all, kad esat pārliecināts. Domēni, kas nekad nesūta pastu:-all, DMARCrejectun null MX.
Tests
Uzdevums
Uzdevums Z4.2: Likt rekursīvi saskaitīt sava domēna SPF. Ievadiet savu domēnu (vai sidn.nl, ja Jums nav sava domēna). Vispirms pats saskaitiet, cik DNS meklējumu maksā SPF ieraksts, ieskaitot visu, kas ir includes iekšienē, un ievadiet skaitli, kopā ar ieraksta beigām (~all, -all, ?all vai +all). Programma tiešsaistē pārbauda rezultātu, ieskaitot tukšos meklējumus, un parāda koku.
Uzdevums O4.2: Jūsu nosūtītāju inventarizācija. Izmantojot šīs nodarbības tabulu, izveidojiet sarakstu ar visām sistēmām, kas sūta pastu Jūsu domēna vārdā. Pierakstiet pie katras: caur kuru serveri vai pakalpojumu, vai tai jābūt Jūsu SPF (savs Return-Path vai nē), un vai tā paraksta ar DKIM, izmantojot Jūsu domēnu. Nosūtiet sev testa e-pastu no vismaz divām sistēmām un no galvenes rindām pierakstiet Return-Path domēnu un DKIM domēnu (d=).
Uzdevums O4.2: Jūsu nosūtītāju inventarizācija
Šo uzdevumu veicat paši; neviens to nepārbauda. Atzīmējiet, ko esat izdarījuši, un atzīmējiet uzdevumu kā paveiktu.
Piemērs: hostinga pasta serveris: SPF jā, DKIM jā. Microsoft 365: include plus divi CNAME ieraksti DKIM vajadzībām. Biļetenu pakalpojums ar savu Return-Path: nav SPF, bet gan DKIM ar savu domēnu. Grāmatvedības programma: saskaņā ar pakalpojuma rokasgrāmatu. Return-Path vai d= ir uzlīdzināts, ja organizācijas domēns sakrīt ar Jūsu paša domēnu.
Jūsu atzīmes un piezīmes paliek tikai šajā pārlūkprogrammā; mēs tās nekur nesūtām. Ja esat pieteikušies, sadaļā Mani kursi saglabājam tikai to, ka uzdevums ir paveikts.
Papildu lasāmviela
Šajos rakstos aprakstītie soļi attiecas uz WebOké paneļiem; pie citiem pakalpojumu sniedzējiem tas darbojas līdzīgi.
- Bezmaksas DNS kurss 4.3: SPF: kurš drīkst sūtīt e-pastu Jūsu domēna vārdā?
- DirectAdmin rokasgrāmata 5.7: SPF iestatīšana un papildināšana
- Kā darbojas SPF ieraksts DNS?
- SPF ieraksta pievienošana vai maiņa DirectAdmin
- WebOké rokasgrāmata 5.5: DNS palīgi: MX, SPF, DMARC, CAA un SRV
- RFC 7208 (SPF), 4.6.4. punkts (limiti) un 6.1. punkts (redirect); RFC 7505 (null MX)
