SPF dla wysyłania wiadomości email

SPF (Sender Policy Framework) - to rekord DNS zawierający listę zaufanych serwerów, z których może być wysyłana poczta z tego domeny, oraz informacje o mechanizmach przetwarzania wiadomości wysłanych z innych serwerów. Prawidłowa konfiguracja SPF pozwoli zmniejszyć prawdopodobieństwo rozsyłania spamu przez oszustów pod Twoim adresem.

Spis treści
  1. Podstawowa składnia
  2. Inne mechanizmy
  3. Przykłady konfiguracji

W Centrum Klienta web-systems.pro SPF jest konfigurowany w sekcji "Plany taryfowe" -> wybierz Plan -> blok "Domeny" -> przycisk koła zębatego względem żądanej domeny -> "Ustawienia domeny DNS" -> "Dodaj rekord DNS" -> wybierz "TXT".

Jeśli rekord TXT z parametrami SPF już istnieje, należy go edytować. Nie zaleca się tworzenia wielu rekordów SPF dla jednej domeny, ponieważ może to prowadzić do problemów z dostarczaniem wiadomości.

Rekord SPF >Web Systems Pro< wygląda następująco:

v=spf1 include:_spf.wsp-cloud.eu ~all



Podstawowa składnia

Każdy rekord SPF zaczyna się od v=spf1, ten parametr nie zmienia się. Wskazuje on na wersję rekordu i obecnie obsługiwany jest tylko spf1.

Następnie są określane parametry (mechanizmy). Najczęściej używane to: all, ip4, ip6, a, mx, include, redirect. Istnieją też inne, ale są znacznie rzadziej używane: ptr, exists, exp. Wszystkie zostaną omówione poniżej.

Oprócz mechanizmów używane są prefiksy (wyznaczniki):

  • + — Pass, akceptuj pocztę. Nie jest konieczne ustawianie tego parametru, jest on domyślny (czyli wartości "+a +mx" i "a mx" są tożsame).
  • - — Fail, odrzuć pocztę. 
  • ~ — SoftFail, odrzuć "miękko" (akceptuj pocztę, ale umieść ją w folderze "Spam"). 
  • ? — neutralnie (traktuj jako zwykłe wiadomości). 



all

Parametr "all" odnosi się do wszystkich serwerów, które nie są wymienione osobno w rekordzie SPF. "All" określa, jak mają być obsługiwane przychodzące z tych serwerów wiadomości i jest umieszczany na końcu rekordu.

Przykład:

v=spf1 ip4:176.57.223.0/24 ~all


— akceptuj pocztę tylko z podsieci 176.57.223.0/24; wiadomości z innych adresów powinny być oznaczone jako spam.


v=spf1 a -all


— akceptuj pocztę tylko z rekordu A domeny; wiadomości z innych adresów powinny być odrzucane.


v=spf1 -all


— odrzuć wszystkie wiadomości z domeny. Można to zastosować do domen, z których nie powinny być wysyłane żadne wiadomości.


W kolejnych przykładach nie będziemy dodatkowo komentować wartości parametrów ~all i -all w rekordach SPF.



ip4 / ip6

Używane do określenia konkretnych adresów i podsieci, z których mogą być wysyłane wiadomości. Składnia dla IPv4 i IPv6 jest identyczna.

Przykłady:

v=spf1 ip4:176.57.223.0/24 ~all


— akceptuj pocztę z podsieci 176.57.223.0/24.


v=spf1 ip6:2001:db8::10 ~all


— akceptuj pocztę z adresu IPv6 2001:db8::10.



a

Adres IP nadawcy jest sprawdzany pod kątem zgodności z rekordem A domeny.

Przykłady:

v=spf1 a ~all


— akceptuj pocztę z rekordu A bieżącej domeny.


v=spf1 a:sub.domain.com ~all


— akceptuj pocztę z rekordu A domeny sub.domain.com.



mx

Adres IP nadawcy jest sprawdzany pod kątem zgodności z adresami IP serwerów podanych w rekordach MX domeny. Obecnie ta dyrektywa nie jest tak ważna dla wielu nowoczesnych usług, ponieważ serwery poczty przychodzącej i wychodzącej często mają różne adresy IP.

Przykłady:

v=spf1 mx mx:sub.domain.com -all


— akceptuj pocztę z serwerów MX bieżącej domeny i domeny sub.domain.com.


v=spf1 mx/24 -all


— akceptuj pocztę z podsieci, w której znajdują się serwery MX bieżącej domeny.



include

Pozwala uwzględnić w rekordzie SPF ustawienia SPF innej domeny.

Przykłady:

v=spf1 a include:other-domain.com -all


— akceptuj pocztę z rekordu A bieżącej domeny oraz serwerów podanych w rekordzie SPF domeny other-domain.com.

W takim przypadku sprawdzane jest SPF domeny other-domain.com; jeśli jest to na przykład "v=spf1 a -all", to adres IP nadawcy jest następnie sprawdzany pod kątem zgodności z rekordem A domeny other-domain.com.



redirect

Technicznie rzecz biorąc, przekierowanie jest modyfikatorem, a nie mechanizmem. Wykonuje jedną główną funkcję: informuje, że należy zastosować ustawienia SPF innej domeny.

Przykład:

v=spf1 redirect=other-domain.com


— poczta powinna być akceptowana lub odrzucana zgodnie z ustawieniami domeny other-domain.com.



Inne mechanizmy

W tym miejscu przyjrzymy się pozostałym mechanizmom, które są używane w ustawieniach znacznie rzadziej.


ptr

PTR-rekord IP nadawcy jest sprawdzana pod kątem zgodności z określoną domeną. Ten mechanizm wymaga dużej liczby zapytań DNS podczas weryfikacji, dlatego nie zaleca się go stosować w SPF bez pilnej potrzeby.

Przykład:

v=spf1 ptr:other-domain.com -all


— akceptować pocztę z wszystkich adresów, których zapis PTR jest skierowany na domenę other-domain.com.



exists

Wywołuje rekord A określonej domeny; jeśli istnieje, weryfikacja jest uważana za zaliczoną. Innymi słowy, sprawdza, czy domena rozwiązuje się na dowolny (jakikolwiek) adres IP.

Przykład:

v=spf1 exists:mydomain.com -all


— akceptować pocztę, jeśli istnieje rekord A domeny mydomain.com.



exp

Parametr „exp” służy do wysyłania wiadomości o błędzie nadawcy wiadomości. Za pomocą „exp” w SPF określa się określoną subdomenę, w rekordzie TXT której znajduje się tekst wiadomości o błędzie. Nazwa subdomeny i tekst błędu mogą być dowolne.

Parametr „exp” zawsze jest umieszczany na końcu wpisu (po all).

Przykład:

v=spf1 mx -all exp=error-spf.mydomain.com


Przy tym rekord TXT domeny error-spf.mydomain.com zawiera: „Not authorized to send mail for this domain”.



Przykłady konfiguracji

Konfiguracja SPF dla Google

(dowiedz się więcej o konfiguracji DNS dla Google tutaj)

Dla korzystania wyłącznie z serwerów Google:

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


Dla korzystania także z innymi serwerami (zamiast IP1, IP2 itd., podaj adresy IP lub podsieci):


v=spf1 ip4:IP1 ip4:IP2 include:_spf.google.com ~all



Inne przykłady

v=spf1 a ip4:176.57.223.12 include:domain2.com -all


— akceptować pocztę z adresów IP zgodnych z rekordami A bieżącej domeny, z adresu IP 176.57.223.12 i serwerów podanych w rekordzie SPF domain2.com; odrzucać pozostałe wiadomości.


v=spf1 mx/24 a:domain2.com/24 ~all


— akceptować pocztę z podsieci, do których należą serwery MX bieżącej domeny i rekordy A domeny domain2.com; odrzucać pozostałe wiadomości jako spam.



Błąd w tekście? Zaznacz ją myszką i kliknij Ctrl + F1 lub kliknij na ten blok!