Объединяя несколько записей SPF, как решить, какой классификатор следует использовать? - PullRequest
0 голосов
/ 30 ноября 2018

Я не уверен, какой квалификатор мне следует использовать при попытке объединить записи SPF.

Я знаю, что в StackOverflow есть много других вопросов относительно того, какая объединенная запись SPF верна, но это не так.t, который я могу найти, ясно объясняет, почему определенный квалификатор должен использоваться, когда разные сервисы предлагают разные квалификаторы.

Моя текущая запись выглядит так:

v=spf1 +a +mx +ip4:111.222.333.444 include:_spf.google.com ~all include:servers.mcsv.net ?all include:mailgun.org ~all

Запись Google SPF :

  • include:_spf.google.com ~all

Запись Mailchimp's SPF :

  • include:servers.mcsv.net ?all

SPF Mailgun's запись:

  • include:mailgun.org ~all

Как мне решить, какой квалификатор использовать из +all, -all, ~all и ?all?

Какой из следующих пунктов является правильным?

  1. v=spf1 +a +mx +ip4:111.222.333.444 include:_spf.google.com include:servers.mcsv.net include:mailgun.org ~all
  2. v=spf1 +a +mx +ip4:111.222.333.444 include:_spf.google.com include:servers.mcsv.net include:mailgun.org ?all
  3. v=spf1 +a +mx +ip4:111.222.333.444 include:_spf.google.com include:servers.mcsv.net include:mailgun.org +all
  4. v=spf1 +a +mx +ip4:111.222.333.444 include:_spf.google.com include:servers.mcsv.net include:mailgun.org -all

MX & A

Тот же вопросон использует +a и +mx нужно ли включать их тоже?

А как насчет +?

Нужно ли включать + перед +a, +mx и +ip4

Не забывайте, что мы отправляем электронные письма через Mailchimp, MailGun, Google и через сервер.

1 Ответ

0 голосов
/ 30 ноября 2018

Ваша текущая запись не имеет смысла.Правила оцениваются слева направо, поэтому ваш механизм по умолчанию (all) всегда должен быть последним.

Когда вы include записываете внешнюю запись SPF, любое содержащееся в ней действие all фактически игнорируется (поскольку онопереопределяется вашими последующими директивами).

Запись MailChimp тупая ( quelle Surprise );?all эквивалентно отсутствию записи SPF, но в данном случае это не имеет значения.

Механизмы с буквальным IP являются самыми быстрыми, потому что для проверки не требуется поиск DNS, поэтому считается вежливым ставить ихfirst.

Вам не нужен + перед механизмами, так как это квалификатор по умолчанию.

Механизм a означает «разрешить IP, возвращенный записью A дляэтот хозяин ".Аналогично, mx означает «разрешить отправку с любого IP-адреса, который также является почтовым обменником (почтовым сервером) для этого домена».Если это правда, добавьте их.Я рекомендую помещать их перед любыми include механизмами, потому что они требуют только одного поиска DNS, и они вполне могут быть кэшированы получателями в любом случае.

Вы никогда не должны использовать +all;это активно плохо, поскольку дает всем источникам положительный результат pass, что хуже, чем отсутствие записи SPF.?all - это то же самое, что не иметь SPF, поэтому вы не должны его использовать.

Если вы также используете DMARC, вы должны использовать ~all;если нет, используйте -all.Причиной этого является то, что правила SPF оцениваются до DMARC, и -all приведет к немедленному прекращению, прежде чем DMARC получит шанс сделать свое дело.Затем DMARC можно настроить на отклонение всего, что получает softfail, и его механизмы отчетности могут делать то, для чего они предназначены.

Я бы порекомендовал эту запись, если вы используете DMARC, и то же самоено -all, если вы не:

v=spf1 ip4:111.222.333.444 a mx include:_spf.google.com include:servers.mcsv.net include:mailgun.org ~all

Независимо от того, что вы в конечном итоге, проверьте его на Валидатор Скотта Киттермана .

...