Дерево страниц

SPF (Sender Policy Framework) - это DNS-запись, содержащая список доверенных серверов, с которых может отправляться почта данного домена, и сведения о механизме обработки писем, отправленных с других серверов. Корректная настройка SPF позволит снизить вероятность рассылки спама злоумышленниками от Вашего имени.

В панели Timeweb SPF настраивается в разделе "Домены и поддомены" - "Настройки DNS" - "Добавить DNS запись" - "TXT". Если TXT-запись с параметрами SPF уже создана, необходимо ее отредактировать. Не рекомендуется создавать несколько SPF-записей для домена, так как это может вызывать проблемы с доставкой почты. 

Для доменов, делегированных на наши NS-серверы, SPF-запись указывается автоматически и выглядит примерно следующим образом: 

Такая запись означает, что письма с данного домена могут отправляться из подсетей 176.57.223.0/24 и 92.53.116.0/22, а письма, пришедшие с других серверов (all), должны проходить дополнительную проверку (~).

Основной синтаксис

Любая SPF-запись начинается с v=spf1, этот параметр не изменяется. Он указывает на версию записи, и в настоящее время поддерживается только spf1. 

Далее указываются параметры (механизмы). Чаще всего используются следующие: allip4ip6amxinclude, redirect. Также существуют, но используются значительно реже: ptrexists, exp. Они все будут рассмотрены ниже.

Помимо механизмов используются префиксы (определители):

  • "+" - Pass, принимать почту. Прописывать этот параметр необязательно, он установлен по умолчанию (т.е. значения "+a +mx" и "a mx" - идентичны).
  • "-" - Fail, отклонять почту.
  • "~" - SoftFail, "мягко" отклонять (принимать почту, но помещать ее в "Спам"). 
  • "?" - нейтрально (обрабатывать как обычное письмо).

all

Параметр "all" подразумевает все серверы, не упомянутые отдельно в SPF-записи. "All" задает обработку полученных с них писем и указывается в конце записи. 

Например:  

— принимать почту только из подсети 176.57.223.0/24; письма с других адресов должны быть помечены как спам.

— принимать почту только с A-записи домена; письма с других адресов должны отвергаться. 

— отвергать все письма с домена. Такую настройку можно использовать для доменов, с которых не должна отправляться вообще никакая почта.

В последующих примерах мы не будем дополнительно комментировать значения параметров ~all и -all в SPF-записях.

ip4 / ip6

Используется для указания конкретных адресов и подсетей, из которых могут отправляться письма. Синтаксис для IPv4 и IPv6 идентичен.

— принимать почту из подсети 176.57.223.0/24.

— принимать почту с IPv6-адреса 2001:db8::10.

a

IP отправителя проверяется на соответствие A-записи домена. 

— принимать почту с A-записи текущего домена.

— принимать почту с A-записи домена sub.domain.com.

mx

IP отправителя проверяется на соответствие IP-адресам серверов, указанных в MX-записях домена. На текущий день для многих современных сервисов эта директива уже не так важна, так как серверы входящей и исходящей почты зачастую имеют разные IP.

— принимать почту с MX-серверов текущего домена и домена sub.domain.com.

— принимать почту из подсети, в которую входят MX-серверы текущего домена.

include

Позволяет учитывать в SPF-записи настройки SPF другого домена. 

— принимать почту с A-записи текущего домена и серверов, указанных в SPF-записи домена other-domain.com. 

При такой настройке проверяется SPF домена other-domain.com; если это, допустим, "v=spf1 a -all", то далее IP отправителя проверяется на соответствие A-записи домена other-domain.com.

redirect

Технически, redirect является модификатором, а не механизмом. Он выполняет одну основную функцию: сообщает, что необходимо применять настройки SPF другого домена.

— почта должна приниматься или отклоняться согласно настройкам домена other-domain.com.

Наверх

Прочие механизмы

Здесь мы рассмотрим оставшиеся механизмы, которые используются в настройках значительно реже.

ptr

PTR-запись IP-адреса отправителя проверяется на соответствие указанному домену. Данный механизм требует большого количества DNS-запросов при проверке, поэтому без острой необходимости использовать его в SPF не рекомендуется. 

— принимать почту со всех адресов, PTR-запись которых направлена на домен other-domain.com 

exists

Запрашивается А-запись указанного домена; если она существует, проверка считается пройденной. Другими словами, проверяется, резолвится ли домен на какой-либо (любой) IP-адрес.

— принимать почту, если существует A-запись домена mydomain.com. 

exp

Параметр "exp" применяется для отправки сообщения об ошибке отправителю письма. С помощью "exp" в SPF прописывается определенный поддомен, в TXT-записи которого указан текст сообщения об ошибке. Имя поддомена и текст ошибки может быть любым.

Параметр "exp" всегда указывается в конце записи (после all). 

Например: 

При этом TXT-запись домена error-spf.mydomain.com содержит: "Not authorized to send mail for this domain".

Наверх

Примеры настроек

Настройка SPF для "Почты для доменов" от Mail.Ru

Если Вы отправляете почту только с серверов Mail.Ru:

Если Вы отправляете почту так же и с других серверов (укажите IP-адреса или подсети вместо IP1, IP2 и т.д.):

Настройка SPF для Яндекс.Почты

(подробнее о настройке DNS для Яндекса см. здесь)

При использовании только серверов Яндекса:

При использовании также и других серверов (укажите IP-адреса или подсети вместо IP1, IP2 и т.д.):

Настройка SPF для Google

При использовании только серверов Google:

При использовании также и других серверов (укажите IP-адреса или подсети вместо IP1, IP2 и т.д.):

Другие примеры

— принимать почту с IP-адресов, соответсвующих A-записям текущего домена, с IP-адреса 176.57.223.12 и серверов, указанных в SPF-записи domain2.com; прочие письма отклонять.

— принимать почту из подсети, в которую входят MX-серверы текущего домена, и из подсети, в которую входят A-записи домена domain2.com; прочие письма отклонять.

— принимать почту с A-записи текущего домена, IP-адреса 176.57.223.12, а также с серверов, указанных в SPF домена domain2.com. 

Наверх