Если используется «a: domain.com», будут ли включены электронные письма, отправленные с адреса *@subdomain.domain.com?

331
Savvas Radevic

Предположительно, у меня есть example.comдомен, и я хотел бы, чтобы он позволял отправлять почту с subdomain.domain.com.

Если запись spf должна проверять электронные письма, отправленные с адреса *@subdomain.domain.com (или отправленные по почте: subdomain.domain.com), "v=spf1 a:domain.com ~all"разрешит ли также субдомен domain.com или только domain.com?

Я не уверен, что мой вопрос имеет какой-либо смысл, но был бы рад найти ответ.

2

1 ответ на вопрос

3
grawity

SPF работает несколько иначе, чем вы пытаетесь описать.


Записи SPF не допускают домены; они позволяют почтовые серверы. Когда вы вставляете a:domain.comзапись SPF, это означает только «принимать почту с IP-адреса, найденного на domain.com/A». Если это действительно указывает на ваш исходящий SMTP-сервер, хорошо. (На больших сайтах это не так.)

include:domain.comработает аналогичным образом: вместо записей «A» он выполняет поиск записей «TXT» и импортирует политику SPF для domain.com. Но это все еще сводится к тому, чтобы «принимать почту с тех IP-адресов, которые SPF домена.com принял бы».

Таким образом, чтобы ответить на вопрос, a:или include:не будет включать поддоменов. Это не имеет смысла и фактически невозможно: для валидаторов нет возможности узнать, что данный IP-адрес существует где-то внутри домена.


Сами записи SPF находятся путем поиска домена отправителя в DNS. Например, если сообщение имеет root@subdomain.example.comадрес Envelope-From, то средства проверки SPF будут искать запись TXT по адресу subdomain.example.com- но они не будут искать родительский домен.

Другими словами, политика SPF, указанная в domain.com , не применяется к сообщениям, отправленным *@subdomain.example.com. Если вы хотите, чтобы оба домена были защищены с помощью SPF, вы должны либо скопировать, либо «включить» политику явно, либо использовать модификатор «redirect =».

Вы правы, это было немного по-другому в моей голове. Это похоже на хорошо написанный полный ответ (и даже больше!), Поэтому пометьте его как ответивший. Полезно, как теперь я вижу, как это работает. В моем примере _example.com_ сказал "проверьте _domain.com_ для диапазона IP-адресов". _subdomain.domain.com_ говорит то же самое, «проверьте _domain.com_ для диапазона IP-адресов». И вот, запись SPF / TXT для диапазонов IP-адресов на _domain.com_ Savvas Radevic 5 лет назад 0
Я также смешал «a:» с «include:» в моем вопросе. Таким образом, _example.com_ на самом деле имел `` v = spf1 include: domain.com ~ all "`, а не `" v = spf1 a: domain.com ~ all "` Savvas Radevic 5 лет назад 1
Ответ на это совсем не отличается - вместо того, чтобы брать IP-адреса из записей «A», он берет _дополнительные политики SPF_ из записей «TXT» на «domain.com», но логика остается той же и субдомены не включены grawity 5 лет назад 1

Похожие вопросы