使用 Postfix 从 DynDNS(子)域发送邮件

使用 Postfix 从 DynDNS(子)域发送邮件

我有一个免费 DynDNS 主机/domain 与 Ubuntu 服务器。mydomain.dyndns.org
我可以接收邮件,但不能发电子邮件来自我的域名。

大多数服务器拒绝我的邮件,因为域名与发送它的 IP 不匹配。当我设置完整限定域名 (FQDN)的 SMTP 服务器localhost

我的问题是:localhost用作 FQDN 从(子)域发送邮件是否正确?如果不,我做错了什么?有人告诉我我需要使用我的 ISP 提供的 SMTP 中继。 在这种情况下,哪个是 DynDNS 的中继?

我使用 Postfix 作为我的 SMTP 服务器。

答案1

MTA 向远程服务器提供的 FQDN 应该与服务器的互联网 FQDN 相匹配;我很惊讶主机在使用时在开始接受您的邮件之前拒绝了您的邮件localhost

这其中涉及到一些事情,并且不同邮件服务器所检查的内容差别很大。

您可能会遇到的是检查PTR您的 IP 的反向查找 () DNS 记录:

  1. 一些邮件服务器期望反向查找与您通过命令发送的 FQDN 完全匹配EHLO
  2. 一些服务器期望该 FQDN 解析回您的发送服务器的 IP 地址。
  3. 但是,具有这种严格程度的服务器很少见。更常见的情况是,它们会验证您的反向条目(例如,mail1.mydomain.com)是否是您尝试从中发送邮件的域(例如,)的子域[email protected]

因此,如果您能够控制您的反向 DNS(如果它不是具有静态地址的商业互联网连接,则可能无法控制),那么请设置您的 PTR 记录,并将其与发送服务器的正向 DNS 进行匹配。

另一个方面是 SPF 记录。许多邮件服务器会使用它作为反向查找检查的替代方案(如果可用),或者至少作为考虑是否丢弃邮件的附加因素。大量信息这里,简而言之,您将TXT在您的域中创建一个类型的 DNS 记录,其中将包含如下内容:

v=spf1 mx -all

这将允许你的 MX 记录中的设备发送,或者是这样的:

v=spf1 ip4:x.x.x.x -all

您的服务器的公共 IP 地址在哪里x.x.x.x。即使您无法使用反向条目,SPF 记录也应该会有很大帮助。

关于使用 ISP 的中继器,当您运营自己的邮件域时,这并不太重要。我认为当今大多数 ISP 的中继器不会接受不是来自自己域的邮件。需要澄清的是,这些邮件来自提供互联网连接的任何人,而不是 DynDNS。

相关内容