Mechanizm SPF dla przekierowań poczty (forward), czyli SRS na serwerach Smarthost.pl

Co to jest i jak działa zabezpieczenie SPF?

Zakładamy, że posiadasz już wykupiony hosting z panelem zarządzania cPanel

Jeśli stoisz przed wyborem hostingu sprawdzonego w działaniu, porównaj nasze pakiety. Wszystkie  opisy  z niniejszego poradnika powstały w  oparciu o hosting Smarthost.pl

W związku z zalewającą nas falą spamu, aktualnie praktycznie wszystkie serwery w internecie używają mechanizmów, które autoryzują maile. Polega to na udowodnieniu, że e-mail wysłany z adresu kontakt@domena-klienta.pl jest faktycznie wysłany z serwera obsługującego domenę: domena-klienta.pl a nie z jakiegoś innego. Dzięki temu mamy pewność, że mail nie ma sfałszowanego nadawcy.

Oczywiście całość dzieje się niezauważalne dla zwykłego użytkownika poczty, na poziomie poprawnie skonfigurowanego serwera pocztowego.

Mechanizmem, który może służyć (i coraz powszechniejszym) jest SPF (Sender Policy Framework). Mechanizm ten, najprościej mówiąc, polega na dodaniu w pliku konfiguracyjnym domeny internetowej (dns zone) listy adresów IP, które są uprawnione do wysyłania poczty z konkretnej domeny. W momencie, gdy wysyłamy pocztę (np. z adresu: kontakt@domena-klienta.pl), serwer odbierający wiadomość sprawdza, jakie adresy IP są uprawnione do wysyłania poczty dla domeny @domena-klienta.pl i jeżeli adres nadawcy pasuje do wysyłająego adresu IP – pocztę przyjmuje, a jeżeli adres IP jest inny – poczta jest odrzucana lub oznaczana jako podejrzana (np dostaje tzw. negatywne punkty na podstawie których mail jest klasyfikowany jako spam).

Sam mechanizm SPF jest prosty i skuteczny. Jest wdrożony na wielu serwerach (w tym oczywiście naszych serwerach dla wszystkich Klientów smarthost.pl). Jest to mechanizm na tyle popularny, że niektóre portale oferujące darmowe konta pocztowe zdecydowały się odrzucać pocztę z niepoprawnymi rekordami SFP (takimi dostawcami są np. wp.pl czy interia.pl).

Dlaczego jest problem z rekordem SPF dla forwardów ?

Czasami zdarza się, że oprócz prostego wysłania poczty z serwera A na serwer B, chcemy, żeby z serwera docelowego była ona przesłana dalej, np. na serwer C. W tym celu ustawia się tzw. forward, czyli usługę „przesyłania poczty dalej„. Można to wyklikać bardzo łatwo w praktycznie każdym panelu hostingowym.

Z forwardami nie było problemów, do momentu, gdy nie nie zaczęto stosowania zabezpieczeń SPF.

Dlaczego?

Odpowiedź jest stosunkowo prosta:

  • Wysyłając e-maila z serwera A (np. z adresu kontakt@domena-klienta.pl na serwerze A, która ma poprawnie skonfigurowane ustawienia SPF dla tej domeny) dociera ona na serwer B.
  • Serwer B sprawdza, czy serwer A jest uprawniony do wysłania poczty z domeny @domena-klienta.pl.
  • Ponieważ SPF na serwerze A jest poprawnie skonfigurowany, serwer B otrzyma potwierdzenie, że może przyjąć pocztę.
  • Na serwerze B jest jednak ustawione przekierowanie na serwer C, zatem serwer B przesyła pocztę dalej.
  • Serwer C odbierając pocztę z adresu kontakt@domena-klienta.pl sprawdza, czy SPF na serwerze B jest skonfigurowany dla tej domeny: @domena-klienta.pl. I tutaj pojawia się problem, bo serwer B nie jest uprawniony do wysyłki poczty z tej domeny. Uprawniony jest serwer A, ale serwer C kontaktuje się przecież tylko z serwerem B, z którego pocztę otrzymuje. I wtedy serwer C traktuje serwer B jako podszywający się pod serwer A (tzw. spoofing) i … pocztę odrzuca.

Oczywiście takie zachowanie sie serwera C jest technicznie poprawne (sprawdza ustawienia SPF serwera, z którego otrzymuje pocztę), ale jest niepoprawne z punktu widzenia użytkownika, który tą pocztę e-mail chce otrzymać (bo sam ustawił przekierowanie – forward).

Rozwiązanie SPF dla forwardów: SRS

Twórcy SPF początkowo nie przewidzieli autoryzacji SPF dla forwardów. Pojawiła się dopiero ok dwa lata po utworzeniu początkowych zarysów specyfikacji SPF. Machanizm zabezpieczający poprawne odbieranie e-maili które są przesyłane dalej (forward) nazywa się SRS (Sender Rewriting Scheme). Mechanizm ten jest aktualnie dostępny dla większości serwerów pocztowych, niemniej nie każdy serwer pocztowy jest skonfigurowany, żeby tego mechanizmu używać.

Jak on działa?

Mechanizm SRS działa stosunkowo prosto: serwer B (ten, który przesyła dalej) modyfikuje nagłówek nadawcy (sender envelope), dodając do niego informację, że adres oryginalnego nadawcy, czyli serwer A został przez niego sprawdzony pod względem SPF i jest to legalny nadawca dla domeny @domena-klienta.pl.

Zatem serwer C zamiast nadawcy: wysłanego przez serwer B, zobaczy nadawcę: kontakt@domena-klienta.pl z dopiskami . Oznaczają one:

SRS0 – że to pierwszy serwer, który przesyła maila dalej (w przypadku kolejnych przesłań, byłyby to kolejno SRS1, SRS2 itd)

nLCQK – unikalny ciąg (za kazdym razem inny), tzw. hash – dla uniknięcia podszywania się spamerów pod forwardowane maile,

RA – unikalny timestamp (za kazdym razem inny), czyli znacznik czasowy, powodujący, że adres forwardowany jest ważny tylko przez pewien czas.

Dzięki zastosowaniu mechanizmu SRS forwardy maili nie psują autoryzacji SPF dla domen. Oczywiście całość dzieje się automatycznie, w tle, bez konieczności wykonywania jakichkolwiek specjalnych czynności przy wysyłce maili przez użytkownika.

Na wszystkich serwerach smarthost.pl SRS dla SPF jest włączone – aby sprawdzić jak działa, najprościej założyć darmowe konto hostingowe i wysłać ustawić na nim przekierowanie poczty na inny serwer.

Załóż bezpłatne konto testowe na serwerze Smarthost.pl i sprawdź jak działa poprawnie skonfigurowany mechanizm SRS dla SPF dla forwardów maili: załóż testowe konto, pakiet smart-www

Dodaj komentarz