这更像是一个一般性问题,与可能使用的特定邮件服务器软件无关。我租用一台服务器并将其用作邮件服务器。它只有一个 SPF 记录,用于该服务器的 IP。这意味着当我通过 SSH 进入服务器并使用命令行时,或者当我通过它代理我的家用机器的流量时,我可以正常发送邮件。但是当我尝试像使用任何其他电子邮件提供商一样在家用机器上使用我的电子邮件客户端时,我收到 SPF 失败(未授权)。
问题是我的家庭网络 IP 地址不固定,所以我不能只将我家 PC 的 IP 添加为 SPF 记录,然后就完事了(此外,我真的不认为这是解决问题的方法)。我还想将我的笔记本电脑带到任何网络上,并能够发送邮件。那么我的设置应该是什么样的呢?
我猜想邮件一开始就不应该包含我家用机器的 IP,但是我在客户端中找不到设置来更改这一点,而且它无需对常用的电子邮件提供商进行任何更改就可以工作。
答案1
如果一切配置正确,则使用用户名和密码进行身份验证将避免此错误。请参见此处:https://en.wikipedia.org/wiki/Open_mail_relay#Closing_relays就我而言,问题在于我在电子邮件客户端中选择了错误的身份验证方法。
答案2
如果您的家庭 IP 不固定,并且您需要有“默认丢弃”的 SPF 记录,那么您就无法直接从 jome 系统发送电子邮件。
解决这个问题的方法是将您的家庭电子邮件系统设置为通过另一个系统转发电子邮件,该系统的 IP 地址已知,可以直接或间接地添加到您的 SPF 目录中。如果您使用 gmail 之类的提供商,您可以添加(例如 include:_spf.google.com)
或者,将您的邮件服务器设置为为您中继,并使用.that 并将“mx”添加到您的 SPF 记录。要进行设置,您需要在服务器和客户端上配置 smtp 身份验证。
或者,如果您是用户,某些 ISP 仍允许您通过其邮件服务器转发电子邮件(基于其 IP 范围)。您可以查明您的提供商是否支持此操作,并添加其 SPF 包含记录...