Что делает «-all» во включенной (вторичной) записи SPF?

Что делает «-all» во включенной (вторичной) записи SPF?

В записи SPF эта -allопция означает: «Я вношу в белый список только те машины/домены, которые я явно перечислил здесь, и никакие другие серверы не могут отправлять электронную почту для этого домена».

Так что же означает, когда используется include:опция в записи SPF для включения второй записи SPF, и чтовторичныйЗапись SPF имеет -all? Какой эффект от ее наличия?

решение1

Механизм include запустит рекурсивную оценку для включенной записи. Если эта оценка не удалась (например, из-за -all во включенной записи), результат механизма include будет считаться "Не совпадает". Таким образом, на практике механизм -all (или любой другой механизм с - квалификатором) во включенной записи SPF не оказывает никакого влияния на оценку первичной записи.

Полный обзор того, как механизм включения влияет на оценку первичной записи, можно увидеть в таблице в разделе 5.2 RFC 7208 (https://www.rfc-editor.org/rfc/rfc7208#section-5.2)

решение2

Для прохождения проверки SPF отправляющий IP-адрес должен пройти хотя бы один из механизмов. Механизмы включения проверяют входящий IP-адрес с помощью включенной записи SPF и «возвращают» результат.

Используя ваш пример:

a.example.com    IN TXT "v=spf1 include:b.example.com +all"
b.example.com    IN TXT "v=spf1 -all"

Включенная запись вернет отказ, так как содержит только -allмеханизм. Однако первая запись пройдет, так как у нее есть механизм +all.

Более подробный пример:

a.example.com            IN TXT "v=spf1 ip4:1.2.3.4 mx include:spf.example.org -all"
a.example.com            IN MX  0 mailserver.example.com
mailserver.example.com   IN A   1.2.3.5
spf.example.org          IN TXT "v=spf1 ip4:4.3.0.0/16 -all"

Я запишу результат каждого механизма в том же порядке, в котором они указаны в записи. Таким образом, результаты будут отформатированы следующим образом:

  • a.example.com:[ip4] [mx] [include] [-all]
  • spf.example.org:[ip4] [-all]

Со следующими адресами отправителя:

1.2.3.4

  • spf.example.org ->fail fail
  • a.example.com ->pass fail fail fail

Окончательный результат будет pass, так как прошла хотя бы одна проверка

1.2.3.5

  • spf.example.org ->fail fail
  • a.example.com ->fail pass fail fail

Окончательный результат будет pass, так как прошла хотя бы одна проверка

4.3.10.20

  • spf.example.org ->pass fail
  • a.example.com ->fail fail pass fail

Окончательный результат будет pass, так как прошла хотя бы одна проверка

TL;DR:Механизм включения оценивается отдельно, а результат передается обратно в оценку записи, которая его включила. Оценка записи не выполняется, если не совпадает ни один механизм. Поскольку вы закончили свой пример на +all, он всегда будет соответствовать и, следовательно, пройдет.

решение3

Символ -allв конце интерпретируется после обработки всех включений.

Его цель — объяснить, как следует обрабатывать электронные письма, отправленные не через перечисленные ресурсы.

-allозначает отбросить их как подделки, в то время ~allкак они все еще могут быть законными и к ним следует относиться с большим подозрением.

Связанный контент