Autoryzacja SPF: Przegląd i najlepsze praktyki

Ptak

19 gru 2016

Email

1 min read

Autoryzacja SPF: Przegląd i najlepsze praktyki

Najważniejsze informacje

    • SPF (Framework Polityki Nadawcy) to protokół uwierzytelniania e-maili oparty na ścieżkach, który weryfikuje, czy serwer wysyłający jest upoważniony do wysyłania poczty w imieniu danej domeny.

    • Polityki SPF są zapisywane jako rekordy TXT DNS, sformatowane z mechanizmami, które określają, które serwery, adresy IP lub sieci mogą wysyłać w imieniu danej domeny.

    • Walidacja SPF jest związana z domeną Return-Path (domena zwrotna) lub nazwą hosta HELO—nie z widocznym adresem nadawcy.

    • Z uwagi na to, że SPF sprawdza tylko ścieżkę wysyłania, można go zweryfikować wczesnym etapie transakcji SMTP, co czyni go użytecznym do szybkiego odrzucania nieautoryzowanej poczty.

    • SPF jest skuteczny, ale nie doskonały—jest podatny na fałszywie negatywne wyniki, szczególnie w przypadku przekazywania e-maili i list mailingowych.

    • Rekordy SPF polegają na mechanizmach takich jak mx, a, ipv4, ipv6, include, redirect, exists, i muszą kończyć się modyfikatorem all (-all, ~all, ?all, +all).

    • Obowiązują ograniczenia dotyczące zapytań DNS: ocena SPF nie może przekroczyć 10 zapytań DNS, co sprawia, że planowanie rekordów jest istotne.

    • Mechanizm ptr jest teraz uważany za „nie do użycia”, ale walidatory muszą wciąż go akceptować. Niektórzy nadawcy wciąż z niego korzystają z powodu luk w zgodności.

    • SPF sam w sobie nie gwarantuje, że e-mail jest legitymny—tylko, że został wysłany z autoryzowanego serwera. Najlepiej działa w połączeniu z DKIM, DMARC i innymi technikami przeciwdziałania oszustwom.

Podsumowanie pytań i odpowiedzi

  • Czym jest SPF w prostych słowach?

    SPF pozwala domenie zadeklarować, które serwery mają prawo wysyłać e-maile w jej imieniu. Serwery odbierające sprawdzają to, aby wykryć nieautoryzowanych nadawców.

  • Dlaczego SPF nazywany jest „opartym na ścieżkach”?

    Ponieważ SPF weryfikuje ścieżkę, jaką przebyła wiadomość—konkretnie, adres IP serwera wysyłającego—zamiast czegokolwiek w treści wiadomości.

  • Gdzie przechowywana jest polityka SPF?

    A: Jako rekord TXT DNS, zaczynając od v=spf1, a następnie mechanizmy, które definiują dozwolonych nadawców.

  • Które domeny weryfikuje SPF?

    Ścieżka zwrotna (Return-Path, nazywana również domeną odbicia).

    Jeśli ścieżka zwrotna jest pusta (NULL sender), SPF sprawdza zamiast tego domenę HELO.

  • Czy SPF można sprawdzić na początku transakcji SMTP?

    Tak. Ponieważ zależy to tylko od adresu IP i domeny serwera wysyłającego, SPF może być walidowany przed otrzymaniem treści wiadomości — co czyni go wydajnym do filtrowania.

  • Dlaczego SPF czasami zawodzi nawet w przypadku legalnych e-maili?

    Najczęstsze przyczyny to:

    • Przekazywanie e-maili (przekazujący nie znajduje się w rekordzie SPF oryginalnej domeny)

    • Listy mailingowe (wiadomości są przesyłane przez inny serwer)
      To prowadzi do fałszywych negatywów, które są inherentne dla uwierzytelniania opartego na ścieżkach.

  • Jaką rolę odgrywają mechanizmy takie jak include, redirect i exists?

    • include — autoryzuj rekord SPF innej domeny (np. twój ESP)

    • redirect — ponownie użyj polityki SPF innej domeny

    • exists — dynamicznie autoryzuj na podstawie zapytania DNS (przydatne w złożonej infrastrukturze)

  • Jak działają wszystkie modyfikatory?

    • -all → odrzuć wszystko, co nie jest wymienione (ścisłe)

    • ~all → softfail (zaakceptuj, ale oznacz)

    • ?all → neutralny

    • +all → zaakceptuj wszystko (de facto wyłącza SPF)

  • Dlaczego mechanizm ptr jest odradzany?

    Jest wolne, niepewne i przestarzałe w nowej specyfikacji - ale walidatory SPF muszą nadal je wspierać.

  • Czy SPF sam w sobie wystarczy do uwierzytelniania e-maili?

    Nie. SPF weryfikuje infrastrukturę wysyłania, ale:

    • Nie chroni integralności wiadomości

    • Nie zgrywa się z widocznymi domenami From

    • Łamie się przy przesyłaniu
      SPF jest najsilniejszy w połączeniu z DKIM i DMARC.

Przed przystąpieniem do technicznej implementacji warto zrozumieć ewolucję i różnorodność technik walidacji e-maili dostępnych. Od prostego sprawdzania składni po nowoczesne podejścia oparte na danych, różne metody walidacji oferują różne poziomy dokładności i niezawodności.

Kiedy mówimy o “uwierzytelnianiu e-maili”, odnosimy się do techniki, która ma na celu zapewnienie odbiorcy wiadomości pewnego poziomu pewności, że wiadomość faktycznie pochodzi od wskazanego nadawcy. Idea ma na celu osiągnięcie pewnego poziomu ochrony przed oszukańczymi e-mailami, takimi jak phishing i spoofing, które mogą podważyć zaufanie odbiorcy do otrzymywania e-maili. Dla organizacji wymagających szyfrowania wiadomości na poziomie wykraczającym poza uwierzytelnianie, S/MIME zapewnia bezpieczeństwo end-to-end, z automatycznym zbieraniem kluczy publicznych odbiorców, co sprawia, że implementacja staje się bardziej skalowalna. Należy jednak zauważyć, że samo wysyłanie uwierzytelnionego e-maila nie oznacza, że e-mail jest dobry lub pożądany; oznacza to jedynie, że reputacja uwierzytelnionej strony może być wiarygodnie ustalona i wykorzystywana w decyzjach dotyczących akceptacji i umiejscowienia e-maili.

Dzisiaj w użyciu są dwa podstawowe formy uwierzytelniania e-maili—Sender Policy Framework (SPF) i DomainKeys Identifed Mail (DKIM). W tym wpisie na blogu wyjaśnię, czym jest SPF i jak działa.

Przed przystąpieniem do technicznej implementacji warto zrozumieć ewolucję i różnorodność technik walidacji e-maili dostępnych. Od prostego sprawdzania składni po nowoczesne podejścia oparte na danych, różne metody walidacji oferują różne poziomy dokładności i niezawodności.

Kiedy mówimy o “uwierzytelnianiu e-maili”, odnosimy się do techniki, która ma na celu zapewnienie odbiorcy wiadomości pewnego poziomu pewności, że wiadomość faktycznie pochodzi od wskazanego nadawcy. Idea ma na celu osiągnięcie pewnego poziomu ochrony przed oszukańczymi e-mailami, takimi jak phishing i spoofing, które mogą podważyć zaufanie odbiorcy do otrzymywania e-maili. Dla organizacji wymagających szyfrowania wiadomości na poziomie wykraczającym poza uwierzytelnianie, S/MIME zapewnia bezpieczeństwo end-to-end, z automatycznym zbieraniem kluczy publicznych odbiorców, co sprawia, że implementacja staje się bardziej skalowalna. Należy jednak zauważyć, że samo wysyłanie uwierzytelnionego e-maila nie oznacza, że e-mail jest dobry lub pożądany; oznacza to jedynie, że reputacja uwierzytelnionej strony może być wiarygodnie ustalona i wykorzystywana w decyzjach dotyczących akceptacji i umiejscowienia e-maili.

Dzisiaj w użyciu są dwa podstawowe formy uwierzytelniania e-maili—Sender Policy Framework (SPF) i DomainKeys Identifed Mail (DKIM). W tym wpisie na blogu wyjaśnię, czym jest SPF i jak działa.

Przed przystąpieniem do technicznej implementacji warto zrozumieć ewolucję i różnorodność technik walidacji e-maili dostępnych. Od prostego sprawdzania składni po nowoczesne podejścia oparte na danych, różne metody walidacji oferują różne poziomy dokładności i niezawodności.

Kiedy mówimy o “uwierzytelnianiu e-maili”, odnosimy się do techniki, która ma na celu zapewnienie odbiorcy wiadomości pewnego poziomu pewności, że wiadomość faktycznie pochodzi od wskazanego nadawcy. Idea ma na celu osiągnięcie pewnego poziomu ochrony przed oszukańczymi e-mailami, takimi jak phishing i spoofing, które mogą podważyć zaufanie odbiorcy do otrzymywania e-maili. Dla organizacji wymagających szyfrowania wiadomości na poziomie wykraczającym poza uwierzytelnianie, S/MIME zapewnia bezpieczeństwo end-to-end, z automatycznym zbieraniem kluczy publicznych odbiorców, co sprawia, że implementacja staje się bardziej skalowalna. Należy jednak zauważyć, że samo wysyłanie uwierzytelnionego e-maila nie oznacza, że e-mail jest dobry lub pożądany; oznacza to jedynie, że reputacja uwierzytelnionej strony może być wiarygodnie ustalona i wykorzystywana w decyzjach dotyczących akceptacji i umiejscowienia e-maili.

Dzisiaj w użyciu są dwa podstawowe formy uwierzytelniania e-maili—Sender Policy Framework (SPF) i DomainKeys Identifed Mail (DKIM). W tym wpisie na blogu wyjaśnię, czym jest SPF i jak działa.

SPF nie jest niezawodne

Choć wydaje się to stosunkowo prostym sposobem uwierzytelniania e-maili, SPF jest podatny na błędy w postaci fałszywych negatywów. Te błędy mogą występować częściej, niż wiele osób jest z tym komfortowych.

Oto dwa powszechne scenariusze, w których doskonale legalne maile mogą nie przejść walidacji SPF i wydawać się fałszywe:

  • Automatyczne przekazywanie, gdzie wiadomość wysłana na jsmith@alumni.university.edu, skrzynkę ustawioną na automatyczne przekazywanie wszystkich maili na jsmith@isp.com

  • Listy dyskusyjne, gdzie e-mail wysłany na talk-about-stuff@listserv.foo.com zostaje „rozwalony” i wysłany do każdego subskrybenta

W obu tych przypadkach, jeśli Return-Path nie zmienił się od swojego oryginalnego, mail może nie przejść kontroli SPF (w zależności od modyfikatora używanego z mechanizmem 'all'). Dzieje się tak, ponieważ dociera do swojego ostatecznego miejsca przeznaczenia z serwera pośredniego, a nie oryginalnego, a ten serwer pośredni prawdopodobnie nie jest w rekordzie SPF domeny. Technika zwana „Schematem Przepisania Nadawcy” lub „SRS” może złagodzić to ryzyko, a niektóre większe strony to przyjęły, ale nie jest to powszechne.

Choć wydaje się to stosunkowo prostym sposobem uwierzytelniania e-maili, SPF jest podatny na błędy w postaci fałszywych negatywów. Te błędy mogą występować częściej, niż wiele osób jest z tym komfortowych.

Oto dwa powszechne scenariusze, w których doskonale legalne maile mogą nie przejść walidacji SPF i wydawać się fałszywe:

  • Automatyczne przekazywanie, gdzie wiadomość wysłana na jsmith@alumni.university.edu, skrzynkę ustawioną na automatyczne przekazywanie wszystkich maili na jsmith@isp.com

  • Listy dyskusyjne, gdzie e-mail wysłany na talk-about-stuff@listserv.foo.com zostaje „rozwalony” i wysłany do każdego subskrybenta

W obu tych przypadkach, jeśli Return-Path nie zmienił się od swojego oryginalnego, mail może nie przejść kontroli SPF (w zależności od modyfikatora używanego z mechanizmem 'all'). Dzieje się tak, ponieważ dociera do swojego ostatecznego miejsca przeznaczenia z serwera pośredniego, a nie oryginalnego, a ten serwer pośredni prawdopodobnie nie jest w rekordzie SPF domeny. Technika zwana „Schematem Przepisania Nadawcy” lub „SRS” może złagodzić to ryzyko, a niektóre większe strony to przyjęły, ale nie jest to powszechne.

Choć wydaje się to stosunkowo prostym sposobem uwierzytelniania e-maili, SPF jest podatny na błędy w postaci fałszywych negatywów. Te błędy mogą występować częściej, niż wiele osób jest z tym komfortowych.

Oto dwa powszechne scenariusze, w których doskonale legalne maile mogą nie przejść walidacji SPF i wydawać się fałszywe:

  • Automatyczne przekazywanie, gdzie wiadomość wysłana na jsmith@alumni.university.edu, skrzynkę ustawioną na automatyczne przekazywanie wszystkich maili na jsmith@isp.com

  • Listy dyskusyjne, gdzie e-mail wysłany na talk-about-stuff@listserv.foo.com zostaje „rozwalony” i wysłany do każdego subskrybenta

W obu tych przypadkach, jeśli Return-Path nie zmienił się od swojego oryginalnego, mail może nie przejść kontroli SPF (w zależności od modyfikatora używanego z mechanizmem 'all'). Dzieje się tak, ponieważ dociera do swojego ostatecznego miejsca przeznaczenia z serwera pośredniego, a nie oryginalnego, a ten serwer pośredni prawdopodobnie nie jest w rekordzie SPF domeny. Technika zwana „Schematem Przepisania Nadawcy” lub „SRS” może złagodzić to ryzyko, a niektóre większe strony to przyjęły, ale nie jest to powszechne.

Przegląd SPF

Framework Polityki Nadawcy (SPF), parafrazując RFC 7208, jest protokołem, który nie tylko pozwala organizacji autoryzować hosty i sieci do używania swoich nazw domenowych przy wysyłaniu e-maili, ale także zapewnia sposób, w jaki host odbierający może sprawdzić tę autoryzację.

Kiedy skończysz czytać ten post, mam nadzieję, że nauczysz się następujących rzeczy:

  • SPF jest systemem uwierzytelniania opartym na „ścieżce”.

  • Polityki SPF są deklarowane w rekordach TXT DNS.

  • Walidacja jest powiązana z domeną Return-Path (co nazywamy w SparkPost „domeną zwrotu”) lub domeną HELO.

  • Walidacja może być wykonywana wcześnie w transakcji SMTP, więc jest to dobre sprawdzenie, aby szybko odrzucić nieautoryzowane wiadomości e-mail.

  • Jest podatny na stosunkowo wysoki odsetek fałszywych negatywów.

Framework Polityki Nadawcy (SPF), parafrazując RFC 7208, jest protokołem, który nie tylko pozwala organizacji autoryzować hosty i sieci do używania swoich nazw domenowych przy wysyłaniu e-maili, ale także zapewnia sposób, w jaki host odbierający może sprawdzić tę autoryzację.

Kiedy skończysz czytać ten post, mam nadzieję, że nauczysz się następujących rzeczy:

  • SPF jest systemem uwierzytelniania opartym na „ścieżce”.

  • Polityki SPF są deklarowane w rekordach TXT DNS.

  • Walidacja jest powiązana z domeną Return-Path (co nazywamy w SparkPost „domeną zwrotu”) lub domeną HELO.

  • Walidacja może być wykonywana wcześnie w transakcji SMTP, więc jest to dobre sprawdzenie, aby szybko odrzucić nieautoryzowane wiadomości e-mail.

  • Jest podatny na stosunkowo wysoki odsetek fałszywych negatywów.

Framework Polityki Nadawcy (SPF), parafrazując RFC 7208, jest protokołem, który nie tylko pozwala organizacji autoryzować hosty i sieci do używania swoich nazw domenowych przy wysyłaniu e-maili, ale także zapewnia sposób, w jaki host odbierający może sprawdzić tę autoryzację.

Kiedy skończysz czytać ten post, mam nadzieję, że nauczysz się następujących rzeczy:

  • SPF jest systemem uwierzytelniania opartym na „ścieżce”.

  • Polityki SPF są deklarowane w rekordach TXT DNS.

  • Walidacja jest powiązana z domeną Return-Path (co nazywamy w SparkPost „domeną zwrotu”) lub domeną HELO.

  • Walidacja może być wykonywana wcześnie w transakcji SMTP, więc jest to dobre sprawdzenie, aby szybko odrzucić nieautoryzowane wiadomości e-mail.

  • Jest podatny na stosunkowo wysoki odsetek fałszywych negatywów.

Autoryzacja oparta na ścieżce

SPF jest uważany za system uwierzytelniania oparty na ścieżce, ponieważ jest ściśle związany z trasą, jaką wiadomość przeszła od swojego źródła do celu. Kiedy serwer wysyłający rozpoczyna transakcję SMTP z serwerem odbierającym, serwer odbierający ustala, czy serwer wysyłający jest uprawniony do wysyłania tej wiadomości w oparciu o politykę SPF domeny. To wyłącznie decyzja oparta na tym, skąd pochodzi wiadomość, bez żadnego związku z treścią wiadomości.

SPF jest uważany za system uwierzytelniania oparty na ścieżce, ponieważ jest ściśle związany z trasą, jaką wiadomość przeszła od swojego źródła do celu. Kiedy serwer wysyłający rozpoczyna transakcję SMTP z serwerem odbierającym, serwer odbierający ustala, czy serwer wysyłający jest uprawniony do wysyłania tej wiadomości w oparciu o politykę SPF domeny. To wyłącznie decyzja oparta na tym, skąd pochodzi wiadomość, bez żadnego związku z treścią wiadomości.

SPF jest uważany za system uwierzytelniania oparty na ścieżce, ponieważ jest ściśle związany z trasą, jaką wiadomość przeszła od swojego źródła do celu. Kiedy serwer wysyłający rozpoczyna transakcję SMTP z serwerem odbierającym, serwer odbierający ustala, czy serwer wysyłający jest uprawniony do wysyłania tej wiadomości w oparciu o politykę SPF domeny. To wyłącznie decyzja oparta na tym, skąd pochodzi wiadomość, bez żadnego związku z treścią wiadomości.

Deklarowanie polityki SPF

Rekord polityki SPF domeny to po prostu specjalnie sformatowany rekord TXT DNS, który zwykle zawiera jeden lub więcej z następujących „mechanizmów”:

  • v=spf1 – Wymagany pierwszy token, aby wskazać, że rekord TXT jest rekordem SPF (domena może mieć wiele rekordów TXT)

  • ipv4, ipv6 – Używane do określenia adresów IP i sieci, które mają pozwolenie na wysyłanie poczty dla domeny

  • a – Jeśli wysyłająca domena ma rekord DNS „A”, który rozwiązuje się na wysyłający IP, to IP jest dozwolone

  • mx – Jeśli wysyłający IP jest również jednym z rekordów MX dla wysyłającej domeny, to IP jest dozwolone

  • all – Wymagany ostatni token, zawsze modyfikowany:

    • -all – Tylko to, co jest tu wymienione, może przejść; odrzuca błędy.

    • ~all – Rzeczy, które nie są tutaj, powinny być miękkim błędem; akceptuj to, ale zanotuj.

    • ?all – Nie jest pewne, czy rzeczy, które nie są tutaj, powinny przechodzić.

    • +all – Uważamy, że SPF jest bezużyteczny; akceptuj wszystko.

Inne mniej powszechne mechanizmy, które są nadal w szerokim użyciu, to:

  • include – Używane, gdy domena nie tylko ma swoje własne serwery, ale również korzysta z serwerów innych osób. Należy z niego korzystać z rozwagą. Każde include to kolejne zapytanie DNS, a rekordy SPF nie mogą wymagać więcej niż dziesięciu zapytań DNS do rozwiązania.

  • redirect – Gdy domena A i domena B są własnością tej samej jednostki i korzystają z tej samej infrastruktury. Właściciele zazwyczaj chcą utrzymać tylko jedną kopię rekordu SPF dla obu i skonfigurować B, aby przekierowywała zapytania do A.

  • exists – Jeśli domena ma wiele małych, nieciągłych bloków sieciowych, może użyć tego mechanizmu, aby określić swój rekord SPF, zamiast wymieniać je wszystkie. Przydatne, aby pozostać w limicie rozmiaru (512 bajtów) dla odpowiedzi DNS.

Uwaga na temat mechanizmu „ptr”

Ostatni mechanizm, „ptr”, istniał w oryginalnej specyfikacji dla SPF, ale został uznany za „nieużywaj” w bieżącej specyfikacji. Mechanizm ptr był używany do ogłaszania, że jeśli adres IP wysyłający miał rekord DNS PTR, który rozwiązuje się na nazwę domeny w pytaniu, to ten adres IP był uprawniony do wysyłania poczty dla domeny.

Bieżący status tego mechanizmu jest taki, że nie powinien być używany. Jednakże, strony wykonujące walidację SPF muszą akceptować go jako ważny.


Mechanizm

Co to robi

Uwagi / Wskazówki dotyczące użycia

v=spf1

Oznacza, że rekord TXT jest polityką SPF

Wymagany pierwszy token

ipv4 / ipv6

Autoryzuj konkretne IP lub bloki CIDR

Najbardziej expliczny i niezawodny sposób autoryzacji

a

Autoryzuje IP pasujące do rekordu A domeny

Dobre dla prostej infrastruktury

mx

Autoryzuje IP wymienione w rekordach MX domeny

Przydatne, gdy serwery MX również wysyłają pocztę

include

Importuje politykę SPF innej domeny

Liczy się do limitu 10-zapytań-DNS; używaj oszczędnie

redirect

Deleguje politykę SPF do innej domeny

Używane, gdy wiele domen dzieli jedną definicję SPF

exists

Autoryzuj za pomocą niestandardowej reguły zapytania DNS

Przydatne dla dużych, fragmentowanych zakresów IP; walidator musi to wspierać

ptr

Autoryzuje na podstawie odwrotnego mapowania DNS

Nieaktualne („nie używaj”) ale nadal musi być respektowane przez walidatory

all

Określa, jak traktować wszystko, co nie jest wyraźnie dozwolone

Warianty: -all odrzucaj, ~all miękkie błędy, ?all neutralne, +all zezwól na wszystko (niezalecane)

Rekord polityki SPF domeny to po prostu specjalnie sformatowany rekord TXT DNS, który zwykle zawiera jeden lub więcej z następujących „mechanizmów”:

  • v=spf1 – Wymagany pierwszy token, aby wskazać, że rekord TXT jest rekordem SPF (domena może mieć wiele rekordów TXT)

  • ipv4, ipv6 – Używane do określenia adresów IP i sieci, które mają pozwolenie na wysyłanie poczty dla domeny

  • a – Jeśli wysyłająca domena ma rekord DNS „A”, który rozwiązuje się na wysyłający IP, to IP jest dozwolone

  • mx – Jeśli wysyłający IP jest również jednym z rekordów MX dla wysyłającej domeny, to IP jest dozwolone

  • all – Wymagany ostatni token, zawsze modyfikowany:

    • -all – Tylko to, co jest tu wymienione, może przejść; odrzuca błędy.

    • ~all – Rzeczy, które nie są tutaj, powinny być miękkim błędem; akceptuj to, ale zanotuj.

    • ?all – Nie jest pewne, czy rzeczy, które nie są tutaj, powinny przechodzić.

    • +all – Uważamy, że SPF jest bezużyteczny; akceptuj wszystko.

Inne mniej powszechne mechanizmy, które są nadal w szerokim użyciu, to:

  • include – Używane, gdy domena nie tylko ma swoje własne serwery, ale również korzysta z serwerów innych osób. Należy z niego korzystać z rozwagą. Każde include to kolejne zapytanie DNS, a rekordy SPF nie mogą wymagać więcej niż dziesięciu zapytań DNS do rozwiązania.

  • redirect – Gdy domena A i domena B są własnością tej samej jednostki i korzystają z tej samej infrastruktury. Właściciele zazwyczaj chcą utrzymać tylko jedną kopię rekordu SPF dla obu i skonfigurować B, aby przekierowywała zapytania do A.

  • exists – Jeśli domena ma wiele małych, nieciągłych bloków sieciowych, może użyć tego mechanizmu, aby określić swój rekord SPF, zamiast wymieniać je wszystkie. Przydatne, aby pozostać w limicie rozmiaru (512 bajtów) dla odpowiedzi DNS.

Uwaga na temat mechanizmu „ptr”

Ostatni mechanizm, „ptr”, istniał w oryginalnej specyfikacji dla SPF, ale został uznany za „nieużywaj” w bieżącej specyfikacji. Mechanizm ptr był używany do ogłaszania, że jeśli adres IP wysyłający miał rekord DNS PTR, który rozwiązuje się na nazwę domeny w pytaniu, to ten adres IP był uprawniony do wysyłania poczty dla domeny.

Bieżący status tego mechanizmu jest taki, że nie powinien być używany. Jednakże, strony wykonujące walidację SPF muszą akceptować go jako ważny.


Mechanizm

Co to robi

Uwagi / Wskazówki dotyczące użycia

v=spf1

Oznacza, że rekord TXT jest polityką SPF

Wymagany pierwszy token

ipv4 / ipv6

Autoryzuj konkretne IP lub bloki CIDR

Najbardziej expliczny i niezawodny sposób autoryzacji

a

Autoryzuje IP pasujące do rekordu A domeny

Dobre dla prostej infrastruktury

mx

Autoryzuje IP wymienione w rekordach MX domeny

Przydatne, gdy serwery MX również wysyłają pocztę

include

Importuje politykę SPF innej domeny

Liczy się do limitu 10-zapytań-DNS; używaj oszczędnie

redirect

Deleguje politykę SPF do innej domeny

Używane, gdy wiele domen dzieli jedną definicję SPF

exists

Autoryzuj za pomocą niestandardowej reguły zapytania DNS

Przydatne dla dużych, fragmentowanych zakresów IP; walidator musi to wspierać

ptr

Autoryzuje na podstawie odwrotnego mapowania DNS

Nieaktualne („nie używaj”) ale nadal musi być respektowane przez walidatory

all

Określa, jak traktować wszystko, co nie jest wyraźnie dozwolone

Warianty: -all odrzucaj, ~all miękkie błędy, ?all neutralne, +all zezwól na wszystko (niezalecane)

Rekord polityki SPF domeny to po prostu specjalnie sformatowany rekord TXT DNS, który zwykle zawiera jeden lub więcej z następujących „mechanizmów”:

  • v=spf1 – Wymagany pierwszy token, aby wskazać, że rekord TXT jest rekordem SPF (domena może mieć wiele rekordów TXT)

  • ipv4, ipv6 – Używane do określenia adresów IP i sieci, które mają pozwolenie na wysyłanie poczty dla domeny

  • a – Jeśli wysyłająca domena ma rekord DNS „A”, który rozwiązuje się na wysyłający IP, to IP jest dozwolone

  • mx – Jeśli wysyłający IP jest również jednym z rekordów MX dla wysyłającej domeny, to IP jest dozwolone

  • all – Wymagany ostatni token, zawsze modyfikowany:

    • -all – Tylko to, co jest tu wymienione, może przejść; odrzuca błędy.

    • ~all – Rzeczy, które nie są tutaj, powinny być miękkim błędem; akceptuj to, ale zanotuj.

    • ?all – Nie jest pewne, czy rzeczy, które nie są tutaj, powinny przechodzić.

    • +all – Uważamy, że SPF jest bezużyteczny; akceptuj wszystko.

Inne mniej powszechne mechanizmy, które są nadal w szerokim użyciu, to:

  • include – Używane, gdy domena nie tylko ma swoje własne serwery, ale również korzysta z serwerów innych osób. Należy z niego korzystać z rozwagą. Każde include to kolejne zapytanie DNS, a rekordy SPF nie mogą wymagać więcej niż dziesięciu zapytań DNS do rozwiązania.

  • redirect – Gdy domena A i domena B są własnością tej samej jednostki i korzystają z tej samej infrastruktury. Właściciele zazwyczaj chcą utrzymać tylko jedną kopię rekordu SPF dla obu i skonfigurować B, aby przekierowywała zapytania do A.

  • exists – Jeśli domena ma wiele małych, nieciągłych bloków sieciowych, może użyć tego mechanizmu, aby określić swój rekord SPF, zamiast wymieniać je wszystkie. Przydatne, aby pozostać w limicie rozmiaru (512 bajtów) dla odpowiedzi DNS.

Uwaga na temat mechanizmu „ptr”

Ostatni mechanizm, „ptr”, istniał w oryginalnej specyfikacji dla SPF, ale został uznany za „nieużywaj” w bieżącej specyfikacji. Mechanizm ptr był używany do ogłaszania, że jeśli adres IP wysyłający miał rekord DNS PTR, który rozwiązuje się na nazwę domeny w pytaniu, to ten adres IP był uprawniony do wysyłania poczty dla domeny.

Bieżący status tego mechanizmu jest taki, że nie powinien być używany. Jednakże, strony wykonujące walidację SPF muszą akceptować go jako ważny.


Mechanizm

Co to robi

Uwagi / Wskazówki dotyczące użycia

v=spf1

Oznacza, że rekord TXT jest polityką SPF

Wymagany pierwszy token

ipv4 / ipv6

Autoryzuj konkretne IP lub bloki CIDR

Najbardziej expliczny i niezawodny sposób autoryzacji

a

Autoryzuje IP pasujące do rekordu A domeny

Dobre dla prostej infrastruktury

mx

Autoryzuje IP wymienione w rekordach MX domeny

Przydatne, gdy serwery MX również wysyłają pocztę

include

Importuje politykę SPF innej domeny

Liczy się do limitu 10-zapytań-DNS; używaj oszczędnie

redirect

Deleguje politykę SPF do innej domeny

Używane, gdy wiele domen dzieli jedną definicję SPF

exists

Autoryzuj za pomocą niestandardowej reguły zapytania DNS

Przydatne dla dużych, fragmentowanych zakresów IP; walidator musi to wspierać

ptr

Autoryzuje na podstawie odwrotnego mapowania DNS

Nieaktualne („nie używaj”) ale nadal musi być respektowane przez walidatory

all

Określa, jak traktować wszystko, co nie jest wyraźnie dozwolone

Warianty: -all odrzucaj, ~all miękkie błędy, ?all neutralne, +all zezwól na wszystko (niezalecane)

Przykładowe rekordy SPF

Oto kilka przykładowych rekordów i ich znaczenia. Ten przykład pokazuje adresy RFC 1918, ale zdaję sobie sprawę, że takie adresy nigdy nie pojawią się w rzeczywistych rekordach SPF.

  • Rekord MX, jeden adres IP, jedna sieć IP, zmiękczone odrzucenie wszystkiego innego:

    • “v=spf1 mx ipv4:10.0.0.1 ipv4:192.168.24.0/24 ~all”

  • Rekord A, dwie sieci IP, odrzucenie wszystkiego innego:

    • “v=spf1 a ipv4:10.0.3.0/23 ipv4:192.168.55.0/26 -all”

  • Nie wysyłamy żadnej poczty:

    • “v=spf1 -all”

  • Uważamy, że SPF jest głupi:

    • “v=spf1 +all”

  • Rekord SPF dla domeny sparkpostmail.com (użyty mechanizm przekierowania)

    • “v=spf1 redirect=_spf.sparkpostmail.com”

  • Rekord SPF dla _spf.sparkpostmail.com (istnieje i użyte mechanizmy ptr):

    • “v=spf1 exists:%{i}._spf.sparkpostmail.com ptr:sparkpostmail.com ptr:spmta.com ptr:flyingenvelope.com ~all”

W SparkPost obecnie używamy mechanizmu ptr w naszym rekordzie SPF. Uznaliśmy to za konieczne z powodu braku uniwersalnego wsparcia dla walidacji mechanizmu exists. Do tej pory nie widzieliśmy żadnych niepowodzeń SPF spowodowanych naszym używaniem mechanizmu ptr.

Oto kilka przykładowych rekordów i ich znaczenia. Ten przykład pokazuje adresy RFC 1918, ale zdaję sobie sprawę, że takie adresy nigdy nie pojawią się w rzeczywistych rekordach SPF.

  • Rekord MX, jeden adres IP, jedna sieć IP, zmiękczone odrzucenie wszystkiego innego:

    • “v=spf1 mx ipv4:10.0.0.1 ipv4:192.168.24.0/24 ~all”

  • Rekord A, dwie sieci IP, odrzucenie wszystkiego innego:

    • “v=spf1 a ipv4:10.0.3.0/23 ipv4:192.168.55.0/26 -all”

  • Nie wysyłamy żadnej poczty:

    • “v=spf1 -all”

  • Uważamy, że SPF jest głupi:

    • “v=spf1 +all”

  • Rekord SPF dla domeny sparkpostmail.com (użyty mechanizm przekierowania)

    • “v=spf1 redirect=_spf.sparkpostmail.com”

  • Rekord SPF dla _spf.sparkpostmail.com (istnieje i użyte mechanizmy ptr):

    • “v=spf1 exists:%{i}._spf.sparkpostmail.com ptr:sparkpostmail.com ptr:spmta.com ptr:flyingenvelope.com ~all”

W SparkPost obecnie używamy mechanizmu ptr w naszym rekordzie SPF. Uznaliśmy to za konieczne z powodu braku uniwersalnego wsparcia dla walidacji mechanizmu exists. Do tej pory nie widzieliśmy żadnych niepowodzeń SPF spowodowanych naszym używaniem mechanizmu ptr.

Oto kilka przykładowych rekordów i ich znaczenia. Ten przykład pokazuje adresy RFC 1918, ale zdaję sobie sprawę, że takie adresy nigdy nie pojawią się w rzeczywistych rekordach SPF.

  • Rekord MX, jeden adres IP, jedna sieć IP, zmiękczone odrzucenie wszystkiego innego:

    • “v=spf1 mx ipv4:10.0.0.1 ipv4:192.168.24.0/24 ~all”

  • Rekord A, dwie sieci IP, odrzucenie wszystkiego innego:

    • “v=spf1 a ipv4:10.0.3.0/23 ipv4:192.168.55.0/26 -all”

  • Nie wysyłamy żadnej poczty:

    • “v=spf1 -all”

  • Uważamy, że SPF jest głupi:

    • “v=spf1 +all”

  • Rekord SPF dla domeny sparkpostmail.com (użyty mechanizm przekierowania)

    • “v=spf1 redirect=_spf.sparkpostmail.com”

  • Rekord SPF dla _spf.sparkpostmail.com (istnieje i użyte mechanizmy ptr):

    • “v=spf1 exists:%{i}._spf.sparkpostmail.com ptr:sparkpostmail.com ptr:spmta.com ptr:flyingenvelope.com ~all”

W SparkPost obecnie używamy mechanizmu ptr w naszym rekordzie SPF. Uznaliśmy to za konieczne z powodu braku uniwersalnego wsparcia dla walidacji mechanizmu exists. Do tej pory nie widzieliśmy żadnych niepowodzeń SPF spowodowanych naszym używaniem mechanizmu ptr.

Jak działa uwierzytelnianie SPF?

Oto, jak wygląda typowa transakcja SMTP, gdy w grę wchodzi SPF:

  • Serwer wysyłający (klient) łączy się z serwerem odbierającym

  • Serwer odbierający notuje adres IP klienta łączącego się

  • Wymieniają powitania, w tym nazwę hosta HELO klienta

  • Klient wydaje polecenie MAIL FROM SMTP

Serwer odbierający może teraz sprawdzić rekord SPF dla domeny MAIL FROM lub nazwy hosta HELO, aby ustalić, czy adres IP łączący się jest upoważniony do wysyłania wiadomości e-mail dla tej domeny, i zdecydować, czy zaakceptować wiadomość.

Oto, jak wygląda typowa transakcja SMTP, gdy w grę wchodzi SPF:

  • Serwer wysyłający (klient) łączy się z serwerem odbierającym

  • Serwer odbierający notuje adres IP klienta łączącego się

  • Wymieniają powitania, w tym nazwę hosta HELO klienta

  • Klient wydaje polecenie MAIL FROM SMTP

Serwer odbierający może teraz sprawdzić rekord SPF dla domeny MAIL FROM lub nazwy hosta HELO, aby ustalić, czy adres IP łączący się jest upoważniony do wysyłania wiadomości e-mail dla tej domeny, i zdecydować, czy zaakceptować wiadomość.

Oto, jak wygląda typowa transakcja SMTP, gdy w grę wchodzi SPF:

  • Serwer wysyłający (klient) łączy się z serwerem odbierającym

  • Serwer odbierający notuje adres IP klienta łączącego się

  • Wymieniają powitania, w tym nazwę hosta HELO klienta

  • Klient wydaje polecenie MAIL FROM SMTP

Serwer odbierający może teraz sprawdzić rekord SPF dla domeny MAIL FROM lub nazwy hosta HELO, aby ustalić, czy adres IP łączący się jest upoważniony do wysyłania wiadomości e-mail dla tej domeny, i zdecydować, czy zaakceptować wiadomość.

MAIL FROM lub HELO – Co sprawdzić?

Specyfikacja SPF wymaga, aby odbierające witryny MUSIAŁY sprawdzić SPF dla domeny MAIL FROM oraz ZALECA sprawdzanie go dla hosta HELO. W praktyce sprawdzenie odbywa się tylko dla domeny MAIL FROM, chyba że być może w tych przypadkach, gdy adres MAIL FROM jest NULL senderem (tj. „<>”), w którym to przypadku host HELO jest jedyną dostępną tożsamością.

Specyfikacja SPF wymaga, aby odbierające witryny MUSIAŁY sprawdzić SPF dla domeny MAIL FROM oraz ZALECA sprawdzanie go dla hosta HELO. W praktyce sprawdzenie odbywa się tylko dla domeny MAIL FROM, chyba że być może w tych przypadkach, gdy adres MAIL FROM jest NULL senderem (tj. „<>”), w którym to przypadku host HELO jest jedyną dostępną tożsamością.

Specyfikacja SPF wymaga, aby odbierające witryny MUSIAŁY sprawdzić SPF dla domeny MAIL FROM oraz ZALECA sprawdzanie go dla hosta HELO. W praktyce sprawdzenie odbywa się tylko dla domeny MAIL FROM, chyba że być może w tych przypadkach, gdy adres MAIL FROM jest NULL senderem (tj. „<>”), w którym to przypadku host HELO jest jedyną dostępną tożsamością.

Inne wiadomości

Przeczytaj więcej z tej kategorii

A person is standing at a desk while typing on a laptop.

Kompletna platforma oparta na sztucznej inteligencji, która rośnie wraz z Twoim biznesem.

A person is standing at a desk while typing on a laptop.

Kompletna platforma oparta na sztucznej inteligencji, która rośnie wraz z Twoim biznesem.