Poprawno

Konfiguracja serwerów, usług, itp.
pokiegogrzyba
Posty: 6
Rejestracja: 01 października 2012, 12:55

Poprawność wpisu SPF w konfiguracji strefy w bindzie

Post autor: pokiegogrzyba »

Hej.
Mam małą prośbę odnośnie poprawnej konfiguracji wpisów SPF (Sender Policy Framework) w pliku strefy dla domeny, z której wysyłam wiadomości.

Chciałem bardziej uwiarygodnić wysłane przeze mnie wiadomości aby nie wpadały czasami do katalogów SPAM.

Generalnie duży i rozbudowany poradnik dotyczący SPF można znaleźć na: http://www.openspf.org/SPF_Record_Syntax, ale może ktoś bardziej doświadczony mi podpowie, czy dobrze rozumiem i czy dobrze skonstruowałem swój wpis.

Chciałbym uwiarygodnić wysłane przeze mnie wiadomości. Chodzi o to, żeby serwery akceptowały (ale nie restrykcyjnie na razie, stąd opcja:

Kod: Zaznacz cały

 ~all
zamiast:

Kod: Zaznacz cały

 -all
Wysłane przeze mnie wiadomości z domeny po rekordzie MX.

Kod: Zaznacz cały

; Plik strefy dla domeny pokiegorzyba.pl
;

$TTL 86400
@       IN      SOA     dns.pokiegogrzyba.pl.  root.pokiegogrzyba.pl. (
                        2012092601      ; serial
                        1200            ; refresh
                        1200            ; retry
                        2419200         ; expire
                        86400)          ; ttl
;




@               NS      dns.pokiegogrzyba.pl.
@               NS      dns2.pokiegogrzyba.pl.
                MX  5   mail.pokiegogrzyba.pl.
@               TXT     "v=spf1 mx:pokiegogrzyba.pl mx ~all"
Czy poprawny jest powyższy wpis? Tzn. chcę tak, żeby serwery akceptowały wiadomości wysłane z mojej domeny, pochodzące z mojego serwera, ale nie na podstawie jego adresu IP, a na podstawie rekordu MX (ip serwera może wszak się zmieniać).

Oraz, czy taki wpis SPF dla jednej domeny nie jest w konflikcie z tym, że wysyłam z tego serwera wiadomości z innych domen (MX 5 mail.pokiegogrzyba.pl.) Czy pliki SPF powinny być dla każdej strefy inne?

Z góry dziękuję.

Awatar użytkownika
pawkrol
Moderator
Posty: 939
Rejestracja: 03 kwietnia 2011, 10:25

Post autor: pawkrol »

Rekord spf jest po to, aby zweryfikować, czy dana wiadomość - z określonej domeny np.:

Kod: Zaznacz cały

...@domena.com
wysyłana jest z określonego adresu ip.

Więc, wydaje mi się, że masz troszkę błędne założenia. Jeśli masz inną domenę np.:

Kod: Zaznacz cały

...@subdomena.domena.com
To musisz utworzyć dla niego inny rekord mx
Awatar użytkownika
LordRuthwen
Moderator
Posty: 2341
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Post autor: LordRuthwen »

Nie, rekord MX jest po to, aby na niego kierować pocztę skierowaną do domeny za którą odpowiada.
Do sprawdzania poprawności adresu źródłowego służy właśnie rekord SPF.
Niemniej dla każdej domeny musisz mieć osobny rekord SPF.
Awatar użytkownika
pawkrol
Moderator
Posty: 939
Rejestracja: 03 kwietnia 2011, 10:25

Post autor: pawkrol »

Na chłopski rozum:
Wysyłając wiadomość z adresu domena.pl na domena.com postfix "zagląda" do strefy domena.com, szukając rekordu mx. Tam ma informację co do nazwy serwera obsługującego domenę, dajmy na to mail.domena.com, następnie leci do rekordu typu A, szukając adresu ip odpowiadającego temu serwerowi. Jak już ma te informacje wysyła wiadomość.

Teraz, w momencie odbierania poczty przez serwer mail.domena.com sprawdza on (jeśli ma zaimplementowany taki mechanizm), czy poczta z adresu domena.pl jest prawdziwa. Robi to w taki sposób iż "zagląda" do twojej strefy szukając wpisu spf. Tam ma informację, czy adres źródłowy serwera nadawczego pokrywa się z wpisem spf w twojej strefie. Jeśli tak jest to działa, jeśli nie, to już zależy od ciebie co zrobi. Albo odrzuci albo przyjmie warunkowo (- lub ~).

I tak jak powiedział LordRuthen, dla każdej domeny bądź subdomeny musisz mieć osobny rekord mx oraz spf.

Np.:

Kod: Zaznacz cały

domena.pl.        IN    MX    10 mail.domena.pl.
subdomena.domena.pl.IN    IN      MX    10 mail.subdomena.domena.pl.

domena.pl.        IN    TXT    "v=spf1 a mx -all"
subdomena.domena.pl.    IN    TXT    "v=spf1 a mx -all"

Oczywiście, można jeszcze zaimplementować dkim, czyli podpis domeny kluczem prywatnym.
ODPOWIEDZ