SPF (Sender Policy Framework)

Poczta i bezpieczeństwo
Protokół uwierzytelniania poczty określający serwery pocztowe uprawnione do wysyłania wiadomości w imieniu domeny.
← Wróć do słownika

Czym jest SPF?

SPF (Sender Policy Framework) to metoda uwierzytelniania poczty e-mail, która pozwala właścicielom domen określić, które serwery pocztowe są uprawnione do wysyłania wiadomości w ich imieniu. Serwery pocztowe odbiorców sprawdzają rekordy SPF, aby potwierdzić, że przychodząca wiadomość z danej domeny pochodzi z autoryzowanego źródła.

Dlaczego SPF ma znaczenie

Bez SPF każdy może wysłać wiadomość wyglądającą tak, jakby pochodziła z Twojej domeny (podszywanie się). SPF pomaga:

Jak działa SPF

1. Właściciel domeny publikuje rekord SPF (TXT) w DNS

2. Serwer pocztowy nadawcy wysyła wiadomość, twierdząc, że pochodzi ona z @example.com

3. Serwer pocztowy odbiorcy wyszukuje rekord SPF domeny example.com

4. Serwer sprawdza, czy adres IP nadawcy jest autoryzowany

5. Stosowany jest wynik: pass, fail, softfail lub neutral

Składnia rekordu SPF

Rekord SPF jest rekordem TXT o określonym formacie:

v=spf1 [mechanisms] [qualifier]all

Przykładowe rekordy SPF

Podstawowy (jeden serwer pocztowy):
v=spf1 ip4:203.0.113.50 -all
Google Workspace:
v=spf1 include:_spf.google.com ~all
Wiele usług:
v=spf1 include:_spf.google.com include:sendgrid.net ip4:203.0.113.50 -all

Mechanizmy SPF

MechanizmOpisPrzykład
ip4Adres IPv4 lub zakresip4:203.0.113.0/24
ip6Adres IPv6 lub zakresip6:2001:db8::/32
includeDołączenie SPF innej domenyinclude:_spf.google.com
aAdresy IP rekordu A domenya:mail.example.com
mxAdresy IP serwerów MX domenymx
allDopasowanie do wszystkiego (zwykle na końcu)-all, ~all, ?all

Kwalifikatory

KwalifikatorWynikZnaczenie
+ (domyślny)PassAutoryzowany nadawca
-FailNieautoryzowany, odrzuć
~SoftFailPrawdopodobnie nieautoryzowany, zaakceptuj, ale oznacz
?NeutralBrak deklaracji polityki

Najlepsze praktyki wdrażania SPF

Zacznij od SoftFail

Przy pierwszym wdrażaniu SPF użyj ~all, aby nie odrzucać prawidłowych wiadomości e-mail:

v=spf1 include:_spf.google.com ~all

Przejdź do Fail

Po potwierdzeniu poprawnego działania przełącz się na -all, aby wymusić ścisłą politykę:

v=spf1 include:_spf.google.com -all

Utrzymuj liczbę zapytań DNS poniżej 10

SPF zezwala na maksymalnie 10 zapytań DNS (include, a, mx, redirect, exists). Przekroczenie tego limitu powoduje niepowodzenie SPF.

# Counts as DNS lookups:

include:_spf.google.com # 1 (plus nested includes)

a:mail.example.com # 1

mx # 1

# Does NOT count:

ip4:203.0.113.50 # 0

ip6:2001:db8::1 # 0

Tylko jeden rekord SPF

Wiele rekordów SPF powoduje niepowodzenie walidacji. Połącz wszystkie mechanizmy w jednym rekordzie:

# Wrong - two SPF records

v=spf1 include:_spf.google.com ~all

v=spf1 include:sendgrid.net ~all

# Correct - combined

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

Sprawdzanie rekordów SPF

Za pomocą dig:
dig example.com TXT | grep spf
Za pomocą DomScan:
curl "https://domscan.net/v1/health?domain=example.com"

# Returns hasSPF status

Walidatory online: MXToolbox, mail-tester.com

Typowe problemy z SPF

Zbyt wiele zapytań DNS

Objaw: SPF permerror

Rozwiązanie: spłaszcz mechanizmy include lub użyj mniejszej liczby usług zewnętrznych

Brak usług zewnętrznych

Objaw: prawidłowa wiadomość e-mail nie przechodzi SPF

Rozwiązanie: dodaj include/ip4 dla wszystkich usług wysyłających (narzędzi marketingowych, CRM itp.)

Zbyt liberalny rekord SPF

Objaw: podszyta wiadomość przechodzi SPF

Problem: użycie +all lub dołączenie zbyt wielu usług

Rozwiązanie: przeprowadź audyt i ogranicz listę autoryzowanych nadawców

SPF ma kluczowe znaczenie dla uwierzytelniania poczty, ale najlepiej działa w połączeniu z DKIM i DMARC, zapewniając kompleksową ochronę.

Wykorzystaj tę wiedzę w praktyce

Użyj API DomScan, aby sprawdzić dostępność domen, ich kondycję i więcej.