
У меня есть домен, с которого я отправляю письма через Mailchimp и Google. Я настроил DKIM для обоих и добавил запись DMARC (для тестирования atm). Я собираю отчеты о сбоях DMARC, и подавляющее большинство этих отчетов — о сбоях SPF.
В моем понимании SPF — это список разрешенных IP-адресов/хостов, которые могут отправлять электронные письма, а DKIM — это ключ, который отправитель должен использовать для подписи электронных писем. Мне кажется, что DKIM лучше подходит для защиты от спуфинга.
Везде, где я ищу, я вижу только, что SPF необходим для защиты электронной почты, но не могу понять, почему в моем случае. Поскольку DKIM настроен, только Mailchimp и Google могут отправлять электронные письма, а DMARC заставит получателя отклонять электронные письма из любого другого места. Ограничение IP-адресов, похоже, ничего не добавляет к этой смеси.
Можно ли отключить SPF с +all в этом случае? В каком сценарии я буду менее защищен, если сделаю это?
решение1
SPF, DKIM и DMARC работают вместе, чтобы повысить доверие к вашему домену и доставку вашей электронной почты в почтовые ящики. Но важно помнить, что система электронной почты получателя вольна обрабатывать ваши электронные письма любым желаемым ею способом. Поэтому не гарантируется, что какой-либо один или несколько из этих механизмов будут реализованы должным образом.
Самое главное в SPF и DKIM по отдельности то, что они не делают ничего, чтобы гарантировать, что заголовок from
аутентифицирован. Это адрес электронной почты, который ваш получатель видит в своем почтовом клиенте. Поэтому они неэффективны для определения того, является ли то, что видит конечный пользователь, подлинным.
Для SPF проверяется только домен, указанный в return-path
заголовке (он же Envelope From) в сообщении SMTP. Это не адрес, который видит конечный пользователь.
Для DKIM важен только домен, указанный в d=
параметре в dkim-signature
заголовке. Опять же, конечный пользователь этого не видит.
DMARC исправляет это. DMARC требует, чтобы «выравнивание» было правильным на любом SPFилиДКИМ.
- Для того, чтобы SPF был в "выравнивании", домен в
from
заголовке должен совпадать с доменом вreturn-path
заголовке. Это редко возможно при отправке электронной почты через сторонних поставщиков услуг массовой рассылки, поскольку именноreturn-path
туда попадают отказы и жалобы, которые отслеживает поставщик, и часто это адрес электронной почты, управляемый третьей стороной. Вот почему вы видите сбои SPF в своих отчетах DMARC. - Для DKIM домен, указанный в
d=
поле заголовка,dkim-signature
должен совпадать с доменом вfrom
заголовке. Этого можно добиться, убедившись, что сторонний отправитель (например, Mailchimp) правильно настроен для подписи DKIM, и вы добавили соответствующие записи DNS в свой домен.
Эта проверка «выравнивания» гарантирует, что то, что конечный пользователь видит в своем почтовом клиенте, аутентифицировано либо SPF, либо DKIM. Если проходящая запись SPF или DKIM соответствует заголовку from
(то, что видит конечный пользователь), сообщение проходит DMARC. В противном случае оно не проходит DMARC.
Обратите внимание, что эти протоколы проверяют только часть адреса электронной почты «доменное имя». Часть после знака @
. Ни один из них не проверяет действительность части имени пользователя. Часть перед знаком @
.
Итак, вы видите, что и SPF, и DKIM необходимы для полной функциональности DMARC. Все 3 необходимы для правильного потока почты. И не все системы получателей электронной почты реализуют стандарты одинаково или правильно.
Огромным разочарованием для системных администраторов является то, что множество отправителей до сих пор не настроили эти 3 стандарта должным образом при отправке электронной почты. И, к сожалению, редко где-либо правильно объясняются вышеприведенные основные принципы.
решение2
Да, к сожалению, не все серверы проверяют DKIM/DMARC при приеме, но проверка SPF в настоящее время более интегрирована/развернута.
Примером может служить сервер On-Prem Exchange. Запись SPF можно проверить с помощью набора правил AntiSpam, с ролью Edge Transport в более поздней версии, но для включения DKIM/DMARC требуется сторонняя интеграция.
Удаление записи SPF в таком состоянии может сделать вас уязвимыми для поддельных писем от организаций, находящихся в подобной ситуации.
решение3
Хотя только авторизованные серверы могут подписывать с помощью DKIM, в стандарте DKIM нет ничего, что могло бы информировать принимающий сервер о том, что сообщения с вашего домена ДОЛЖНЫ быть подписаны с помощью DKIM. С точки зрения почтовых стандартов, принимающий сервер не может отличить авторизованные отправляющие серверы от неавторизованных отправляющих серверов.
Конечная проблема, которая возникнет, заключается в том, что для принимающих серверов, которые не используют тесты DMARC, ваш домен с высокой вероятностью будет занесен в черный список, поскольку спамеры обнаружат, что его легко подделать.