Вопрос или проблема
Если я отправил письмо с моего сайта (на частном сервере) на [email protected], я получил следующий отчет:
<record>
<row>
<source_ip>x.x.x.x</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>pass</dkim>
<spf>fail</spf>
</policy_evaluated>
</row>
<identifiers>
<header_from>mydomain.com</header_from>
</identifiers>
<auth_results>
<spf>
<domain>mydomain.com</domain>
<result>pass</result>
</spf>
<dkim>
<domain>mydomain.com</domain>
<result>pass</result>
</dkim>
</auth_results>
</record>
Идентификаторы/header_from и auth_results/spf/domain оба mydomain.com, мой отправитель (и обратный путь) это [email protected]
Тест SPF в порядке, но dmarc (policy_evaluated/spf) не проходит, я не понимаю, почему …
Моя DNS запись (SPF/DMARC):
"v=spf1 a mx include:mx.ovh.com -all"
"v=DMARC1\; p=reject\; sp=none\; rua=mailto:[email protected]\; rf=afrf\; pct=100\; ri=86400"
Причина ошибки DMARC по политике SPF (<policy_evaluated><spf>fail
) несмотря на успешную проверку SPF (<auth_results><spf><result>pass
) заключается в том, что ваш SMTP “mailFrom” (envelope MAIL From или RFC 5321.MailFrom) и ваши поля заголовка “From” не совпадают. Я не могу быть уверен, основываясь на предоставленном вами фрагменте, но это вероятный ответ.
Например, если ваша почтовая система устанавливает envelope MAIL From
на <[email protected]>
, но ваш header From
указывает, что адрес для ответа <[email protected]>
, то домены не совпадают и оценка DMARC по SPF не пройдет, хотя вы включили mail.provider.tld
в свою запись SPF.
Эти статьи могут помочь:
- https://stackoverflow.com/questions/33288490/dmarc-spf-dkim-not-authenticating-with-third-party-mail
- https://blogs.msdn.microsoft.com/tzink/2013/04/27/how-to-setup-dmarc-records-if-you-are-outsourcing-some-or-all-of-your-email-part-1 & https://blogs.msdn.microsoft.com/tzink/2013/04/27/how-to-setup-your-dmarc-records-if-you-are-outsourcing-some-or-all-of-your-email-part-2
Как сказал Генри, вам нужно соответствие одного из двух тестов (SPF или DKIM), чтобы DMARC прошел.
Я мало знаю о том месте для тестирования, я использую Campaign Cleaner в качестве основного тестера электронной почты. Тем не менее, DMARC может не пройти, если ваш SPF не совпадает, это называется тестом ASPF. DMARC требует SPF, DKIM или обоих. Поскольку у вас работает SPF, единственное, что приходит на ум, это то, что, возможно, ваш тест ASPF не проходит, или у тестера есть потенциальная ошибка. Я протестировал свою электронную почту с помощью этого теста, и он показал, что я прошел DMARC.
Ответ или решение
Причина, по которой проверка DMARC завершилась неудачно, несмотря на то, что проверка SPF прошла успешно, заключается в том, что поля "MAIL From" (envelope) и "From" (заголовок) email-сообщения не совпадают по доменам. В рамках DMARC, для успешного прохождения проверки необходимо, чтобы домены, указанные в этих двух полях, были выровнены (alignment).
Например, если ваш SMTP-сервер устанавливает значение поля "MAIL From" на что-то вроде <[email protected]>
, а в поле "From" в заголовке указано <[email protected]>
, то домены "mydomain.com" и "mail.provider.tld" не совпадают. Это приведет к тому, что DMARC не сможет подтвердить корректность отправителя, даже если SPF-тест прошел успешно, так как он учитывает только домен в поле "MAIL From" для оценки соответствия с DMARC.
Решение проблемы:
-
Проверьте конфигурацию отправки: Убедитесь, что поле "MAIL From" (envelope) и поле "From" совпадают по домену. Это можно сделать, настроив параметры вашего SMTP-сервера или почтовой системы так, чтобы они использовали один и тот же домен.
-
Измените настройки SPF и DMARC: Убедитесь, что входящие домены в записи SPF и DMARC совпадают с доменами, используемыми в "MAIL From" и "From". Например, чтобы DMARC-политика работала должным образом, убедитесь, что указан правильный домен в обоих случаях.
-
Проверьте тестовые сервисы: Иногда тестовые сервисы могут возвращать неверные результаты из-за ошибок или недостатков в их алгоритмах. Если вы уверены в своей конфигурации, имеет смысл протестировать ваш SMTP-сервер с помощью других инструментов для проверки DMARC.
-
Используйте DKIM: Чтобы дополнительно повысить уровень аутентификации, вы можете настроить DKIM. Наличие успешной проверки DKIM может помочь в случае, когда SPF не проходит по причине несовпадения доменов.
Заключение:
Советую внимательно проверить настройки вашего почтового сервера и удостовериться, что домены в полях "MAIL From" и "From" совпадают. Это даст возможность DMARC пройти успешно. Также не забудьте протестировать изменения с использованием нескольких инструментов проверки DMARC и SPF, чтобы гарантировать корректность настроек.