从一台主机发送多域电子邮件时的 SPF 记录

Ste*_*dge 0 email smtp spf

我们有一个 CMS 系统,其中多个客户从单个虚拟机运行他们的网站。CMS 生成的页面允许填写表单,从而触发要发送的电子邮件。我在弄清楚如何正确配置 SPF 记录以使电子邮件不会被标记为垃圾邮件时遇到了麻烦。据我所知,如果我们托管三个客户域:

customer1.com
customer2.info
customer3.co.uk
Run Code Online (Sandbox Code Playgroud)

全部在一台名为 my-cms-uk.com 的机器上

然后我需要为所有三个客户域以及 my-cms-uk.com 添加 SPF 记录,它们都指定 my-cms-uk.com 的 IP 允许为该域发送电子邮件?我不确定是否还需要为机器的 FDQN 添加 SPF。

我尝试过谷歌搜索,但找不到为多个域设置 SPF 的明确解释。我尝试使用的 SPF 记录指定了主机的 IP,例如

“v=spf1 ip4:111.22.33.444 mx ~all”

只是为了让我更加困惑,我查看了使用 mailgun 和 aweber 的人发送的电子邮件的 SMTP 设置,他们似乎没有我期望的 SPF 设置。例如,Cal Newport (calnewport.com) 有一个使用 aweber 的电子邮件列表,但 calnewport.com 没有允许 aweber 作为电子邮件发件人的 SPF 记录?

Mad*_*ter 7

它们之间没有连接,因为 SPF 记录是按设置的,而不是按发送主机设置的

如果几个不同的域每个都发送仅来自一个主机的电子邮件mail.example.com,那么每个域都应该有一个 SPF 记录,例如a:mail.example.com -all. 请注意,每个都没有引用从mail.example.com.

重要的是mail.example.com有一个 A 记录指向每个域的允许发送主机的 IP 地址。

域的 SPF 记录可能会引用另一个域,例如在撰写本文时,其hotpoint.co.ukSPF 记录是include:_spf.google.com ip4:46.37.28.0/24 ip4:89.119.89.27 ip4:89.119.89.28 ip4:193.104.11.3 ~all。这包括 google 不是因为 google 的电子邮件也来自 hotpoint 的服务器,而是因为 hotpoint 的邮件可能来自 google 的基础设施。如果除了您的单个服务器之外,您列出的每个客户域都没有其他合法的电子邮件发件人,则这种复杂性不适用于您。

编辑:如果您正在考虑设置 SPF 记录,我是否可以强烈建议您不要打扰,如果您打算以~all?all(或更糟,+all)结束它们?不以 结尾的 SPF 记录-all不能用于任何事情,因此真的毫无意义;互联网不在乎你说哪些主机可以从你那里发送电子邮件,它关心你说哪些主机不能。SF 上的一些邮件管理员使用没有终端的 SPF 记录-all作为垃圾邮件域的积极指标。