Rola rekordów SPF w uwierzytelnianiu poczty elektronicznej
Sender Policy Framework (SPF) to standard uwierzytelniania wiadomości e-mail, który pozwala właścicielom domen wskazać serwery uprawnione do wysyłania poczty w ich imieniu. Informacje te są publikowane w strefie DNS domeny jako rekord TXT. Serwery odbiorcze pobierają ten rekord podczas weryfikacji nadawcy, aby sprawdzić, czy adres IP serwera wysyłającego pasuje do listy autoryzowanych źródeł. Poprawnie skonstruowany rekord SPF stanowi kluczowy element ochrony przed podszywaniem się pod nadawcę (spoofing) oraz bezpośrednio wpływa na dostarczalność wiadomości e-mail.
Składnia rekordu SPF i kluczowe komponenty
Rekord SPF składa się z wersji oraz serii mechanizmów i modyfikatorów, które definiują reguły autoryzacji. Każdy rekord musi zaczynać się od deklaracji wersji v=spf1, która musi być pierwszym i jedynym takim elementem w rekordzie.
Do najczęstszych składników rekordu SPF należą:
ip4orazip6: Wskazują konkretne adresy IP lub zakresy podsieci CIDR uprawnione do wysyłki.include: Przekazuje proces oceny do rekordu SPF innej domeny, co jest powszechnie stosowane przy integracji z zewnętrznymi dostawcami usług pocztowych.aorazmx: Autoryzują odpowiednio adresy IP powiązane z rekordami A/AAAA lub rekordami MX wskazanej domeny.all: Mechanizm końcowy określający, jak traktować wiadomości od nadawców, którzy nie pasują do żadnego z wcześniejszych warunków. Może przybierać różne kwalifikatory, takie jak-all(odrzucenie),~all(miękkie odrzucenie) lub?all(wynik neutralny).redirect: Modyfikator wskazujący, że ocena SPF powinna zostać w pełni przekierowana do rekordu innej domeny.
Limit 10 zapytań DNS i jego konsekwencje
Podczas weryfikacji rekordu SPF serwer odbiorcy wykonuje zapytania DNS w celu rozwiązania określonych mechanizmów. Specyfikacja SPF nakłada ścisły limit maksymalnie 10 zapytań DNS podczas pełnej oceny jednego rekordu.
Do limitu tego wliczają się mechanizmy include, a, mx, ptr, exists oraz modyfikator redirect. Mechanizmy takie jak ip4 oraz ip6 nie wymagają zapytań DNS i nie obciążają tego limitu.
Przekroczenie limitu 10 zapytań DNS niesie poważne konsekwencje dla dostarczalności poczty. Zgodnie ze standardem, ocena SPF, która wymaga więcej niż 10 zapytań DNS, musi być traktowana przez serwery odbiorcze jako błąd trwały (PermError). W rezultacie wiadomości mogą zostać odrzucone lub oznaczone jako spam, nawet jeśli zostały wysłane z autoryzowanego adresu IP.
Analiza zapytań zagnieżdżonych i lokalna weryfikacja
Narzędzie wykonuje lokalną analizę składniową i szacuje liczbę zapytań DNS dla pierwszego, wklejonego rekordu. Oznacza to, że zlicza ono wyłącznie bezpośrednie składniki wywołujące zapytania DNS widoczne w tekście. Narzędzie nie odpytuje serwerów DNS ani nie rozwija celów zawartych w mechanizmach include oraz redirect.
W praktyce cele include lub redirect mogą odwoływać się do kolejnych rekordów, które generują własne, zagnieżdżone zapytania DNS. Te dodatkowe zapytania sumują się w pełnym łańcuchu oceny serwera odbiorczego. Z tego powodu rzeczywista liczba zapytań DNS może być wyższa niż oszacowanie dla pierwszego rekordu, co należy brać pod uwagę podczas planowania polityki SPF.
Zagrożenia składniowe i błędy w polityce SPF
Podczas tworzenia i edycji rekordów SPF łatwo o błędy, które osłabiają ochronę domeny lub całkowicie uniemożliwiają poprawną weryfikację. Do najczęstszych problemów należą:
- Stosowanie mechanizmu
ptr: Mechanizmptrjest powolny i zawodny, dlatego nie powinien być publikowany w rekordach SPF. - Użycie kwalifikatora
+all: Taki zapis autoryzuje każdego nadawcę na świecie, co całkowicie niweczy cel stosowania SPF. - Użycie kwalifikatora
?all: Zwraca wynik neutralny, nie dając serwerom odbiorczym jasnych wskazówek dotyczących postępowania z nieautoryzowaną pocztą. - Brak polityki końcowej: Jeśli rekord nie zawiera mechanizmu
allani modyfikatoraredirect, niedopasowani nadawcy automatycznie otrzymują wynik neutralny. - Składniki po mechanizmie
all: Każdy element umieszczony w rekordzie po mechanizmiealljest nieosiągalny podczas oceny SPF i nie zostanie uwzględniony. - Konflikt
redirectzall: Modyfikatorredirectjest ignorowany, jeśli w rekordzie znajduje się również mechanizmall.
Zasady działania i prywatność narzędzia
Narzędzie przetwarza wprowadzone dane wyłącznie lokalnie w przeglądarce użytkownika. Wklejony rekord SPF nie jest przesyłany na serwery zewnętrzne ani zapisywany. Narzędzie nie wykonuje zapytań DNS, nie rozwija rekordów dostawców, nie testuje adresów IP nadawców ani nie symuluje odpowiedzi serwerów pocztowych odbiorców. Maksymalna długość przetwarzanego rekordu wynosi 20 000 znaków. Fragmenty DNS TXT ujęte w cudzysłowy są automatycznie łączone przed rozpoczęciem analizy.
FAQ
Jak obliczane jest szacowanie liczby zapytań DNS dla SPF?
Szacowanie zlicza składniki include, a, mx, ptr, exists i redirect we wklejonym rekordzie. Rekordy dołączone i przekierowane mogą powodować dodatkowe zapytania, dlatego lokalne sprawdzenie nie pozwala ustalić końcowej liczby zapytań rekursywnych.
Co się stanie, jeśli SPF wymaga więcej niż 10 zapytań DNS?
Odbiorcy SPF muszą traktować ocenę przekraczającą limit 10 składników wymagających zapytań DNS jako błąd trwały. Limit obejmuje cały łańcuch include i redirect, a nie tylko pierwszy rekord.
Czy wynik bez problemów dowodzi, że moja konfiguracja SPF działa?
Nie. Ta strona sprawdza wyłącznie wklejony tekst. Nie wysyła zapytań DNS, nie rozwija rekordów dostawców, nie testuje adresu IP nadawcy ani nie potwierdza odpowiedzi serwera pocztowego odbiorcy.