Я понимаю, как SPF участвует в выравнивании DMARC, но я не могу понять одну вещь: политика SPF (-all
или ~all
) используется в DMARC? Или DMARC просто использует диапазоны IP-адресов?
Проблема в том, что, как мы все знаем, SPF прерывает пересылку. DKIM намного лучше, когда дело доходит до пересылки. Итак, теперь, когда у меня реализован DKIM + DMARC, могу ли я ослабить свою политику SPF, потому что DMARC позаботится о проверке выравнивания SPF?
DMARC фактически оценивает ваш результат SPF, ища ПРОЙДЕН, а также соответствие между smtp.mailfrom
домен и header.from
домен. Пока SPF не дает результата (независимо от того, есть ли у вас ?all
, ~all
или -all
механизм в конце), DMARC не будет считать результат SPF PASS. То же самое и с DKIM. В header.d
домен должен соответствовать header.from
домен и результат должен быть ПРОХОДИТ.
Однако, чтобы частично ответить на ваш вопрос, некоторые серверы будут интерпретировать жесткий отказ SPF (-all
) в качестве причины отклонять ваши электронные письма, даже если они проходят DMARC в DKIM.
С другой стороны, не все принимающие серверы проверяют DMARC. Итак, мягкий сбой SPF (~all
) не приведет к тому, что электронное письмо будет отклонено само по себе (вообще говоря). В то же время SPF не лучший инструмент защиты от спуфинга, так как SPF проверяется на smtp.mailfrom
домен вместо header.from
домен, и только последний виден получателю (в большинстве клиентских программ). И, таким образом, требование согласования в DMARC.
С точки зрения того, что лучше переадресовать: зависит от обстоятельств. Некоторые экспедиторы перепишут Return-Path
(a.k.a. snmtp.mailfrom
), который исправит SPF, но нарушит выравнивание DMARC. Другие, например, добавят фрагмент текста в subject
поле, которое, в свою очередь, нарушит подпись DKIM (если subject
был одним из подписанных заголовков). Это не так однозначно. Полученная цепочка с аутентификацией (ARC) - полезный в этом отношении протокол, хотя он все еще находится в разработке.
Я бы посоветовал использовать SPF с механизмом мягкого отказа и использовать DMARC с политикой отклонения. Кроме того, для достижения оптимальных результатов используйте дополнительные SPF и DKIM.
Мое мнение: Вы публикуете четкую директиву в DMARC. Получатель должен провести соответствующие проверки. Фактически, принимающий сервер можно настроить так, чтобы он полностью игнорировал как политики отказа SPF (жесткий), так и политики отклонения DMARC. Это не ответственность отправителя, а прерогатива получателя.
Он просто проверяет, находится ли IP / хост в записи SPF, общая логика такова:
If the sending IP address is contained in the SPF record = SPF PASS
If the sending IP address is not contained in the SPF record = SPF FAIL
(см. такие сайты, как http://knowledge.ondmarc.com/learn-about-dmarc/all-you-need-to-know-about-spf-dkim-and-dmarc откуда цитируется приведенная выше логика).
Политики DMARC и SPF независимы. Я бы не стал менять политики SPF, потому что есть политика DMARC. Следует учитывать, что не все почтовые серверы используют DMARC, но используют SPF. Так что политика SPF должна иметь смысл сама по себе.