Czym jest rekord SPF i jakie ma elementy?
SPF (Sender Policy Framework) to rekord DNS typu TXT, który określa jakie serwery pocztowe są uprawnione do wysyłania e-maili w imieniu Twojej domeny. Chroni przed spoofingiem — podszywaniem się pod Twoją domenę przez nieuprawnionych nadawców.
Jak działa SPF?
Gdy serwer odbiorcy otrzymuje wiadomość, sprawdza rekord SPF domeny nadawcy. Porównuje adres IP serwera który wysłał e-mail z listą dozwolonych adresów w rekordzie. Jeśli IP nie jest na liście — wiadomość może zostać odrzucona lub oznaczona jako spam.
Przykładowy rekord SPF
v=spf1 ip4:203.0.113.0/24 include:_spf.google.com ~all
Elementy rekordu SPF
Wersja
Każdy rekord SPF musi zaczynać się od
v=spf1.
Jest to jedyna obsługiwana wersja protokołu.
Mechanizmy
Mechanizmy określają które serwery są uprawnione do wysyłania poczty. Sprawdzane są po kolei od lewej do prawej.
| Mechanizm | Przykład | Opis |
|---|---|---|
| ip4 | ip4:203.0.113.0/24 | Zezwala na konkretny adres IPv4 lub zakres CIDR. |
| ip6 | ip6:2001:db8::/32 | Zezwala na konkretny adres IPv6 lub zakres CIDR. |
| include | include:_spf.google.com | Dołącza rekord SPF innej domeny. Używane gdy korzystasz z zewnętrznych dostawców poczty (Google, SendGrid itp.). |
| a | a:mail.example.com | Zezwala na adresy IP wskazywane przez rekord A danej domeny. Bez argumentu sprawdza domenę z nagłówka. |
| mx | mx | Zezwala na serwery wskazywane przez rekordy MX domeny. Przydatne gdy serwer odbierający pocztę jest też nadającą. |
| exists | exists:%{i}.example.com | Sprawdza czy dany rekord DNS istnieje. Rzadko stosowany, używany w zaawansowanych konfiguracjach. |
| all | ~all | Dopasowuje wszystkie adresy IP. Zawsze używany na końcu rekordu jako domyślna reguła. |
Kwalifikatory
Każdy mechanizm może być poprzedzony kwalifikatorem który określa co zrobić gdy mechanizm pasuje.
| Symbol | Nazwa | Działanie |
|---|---|---|
| + | Pass | Serwer jest uprawniony. Domyślny kwalifikator. |
| - | Fail | Serwer nie jest uprawniony. Wiadomość powinna zostać odrzucona. Najostrzejsza polityka. |
| ~ | SoftFail | Serwer prawdopodobnie nie jest uprawniony. Wiadomość przyjęta ale oznaczona. Zalecane podczas wdrażania SPF. |
| ? | Neutral | Brak jednoznacznej polityki. Traktowane podobnie jak brak rekordu SPF. |
Modyfikatory
Modyfikatory to opcjonalne dyrektywy zmieniające zachowanie całego rekordu SPF.
| Modyfikator | Opis |
|---|---|
| redirect | Przekierowuje sprawdzanie SPF do innej domeny. Zastępuje cały rekord — nie można używać razem z all. |
| exp | Wskazuje domenę z komunikatem wyjaśniającym odrzucenie. Rzadko używany. |
Limit 10 zapytań DNS
Mechanizmy
include,
a,
mx
i
exists
wykonują zapytania DNS. Standard SPF dopuszcza maksymalnie 10 takich zapytań — przekroczenie limitu skutkuje błędem
permerror.