СПАМ. Ошибка доставки почты (отсутствует SPF запись в DNS)
Ставил на прошлой неделе новый почтовый сервер. Изменения были весьма масштабными, кроме всего прочего, поменялся и статический ip, который ранее выдавал провайдер. Следствием этого получили очередной виток борьбы со всякими спамбазами, где адреса блокируются целыми блоками (вообще, конечно, это забота провайдера выдавать чистый IP-адрес, вот только заниматься такими вещами провайдеры считают выше своего достоинства). Но, сегодня речь не об этом...
Так вот, обнаружил в логе интересный отчёт с ошибкой о доставке и упоминании какого-то таинственного SPF, раньше подобной ошибки не встречалось или просто не обращал внимания. Решил разобраться что же это такое.
SPF (Sender Policy Framework) - это своеобразная политика проверки отправителя почты, где проверятся соответствие MX записи в DNS записи. Данная политика служит уменьшению спама в потоке почты. SPF прописывается в специальной TXT-записи DNS сервера, где владелец домена может указать список серверов, имеющих право отправлять почту от имени этого домена.
С теорией разобрались. Приступим к редактированию DNS и добавления нашего сервера в SPF. Запись SPF состоит из трех блоков: версия, префикс-механизм и модификатора.
Версия на данный момент только одна - “v=spf1”.
Префиксы:
- "+" Pass - принимать сообщения. Параметр по умолчанию
- "-" Fail - не принимать сообщения
- "~" SoftFail - отправлять в СПАМ
- "?" Neutral - нейтральное отношение, требуется дополнительная проверка.
Механизмы:
- all - любой сервер
- ip4, ip6 - адрес сервера
- a, mx - сервер из DNS записи A или MX соответственно
- include - взять данные с другого адреса
Модификаторы:
- redirect - использовать данные другого адреса
- exp - ссылка на сообщение при отказе принятия сообщения
Примеры:
Игнорировать всю почту с домена:
v=spf1 -all
Принимать сообщения с серверов указанных в A и MX записях, сообщения с остальных серверов должны быть отклонены:
v=spf1 +a +mx -all
Принимать сообщения с серверов указанных MX записях, сообщения с остальных серверов будут приняты, но отправлены в СПАМ:
v=spf1 +mx ~all
Забрать все правила с домена example.com:
v=spf1 redirect:example.com
Принимать сообщения с собственного почтового сервера (123.45.67.89) и серверов указанных в MX записях, остальные помечены как СПАМ:
v=spf1 ip4:123.56.68.89/32 +mx ~all
Проверить, есть ли у домена site.ru SPF запись можно с помощью утилиты dig:
$ dig TXT site.ru
SPF позволяет ограничить с каких серверов может отправляться почта от имени вашего домена. Можно воспользоваться конструктором, который поможет сгенерировать SPF запись и наглядно посмотреть как формируется SPF.






Комментариев: 1
На самом деле, эта проблема проблем и касается практически всех, ну или может коснуться завтра или послезавтра. Почтой то пользуются все, кроме разве что бабушек старушек.