为什么我自己创建的邮件服务器无法向 Yahoo、Gmail 等发送邮件

为什么我自己创建的邮件服务器无法向 Yahoo、Gmail 等发送邮件

我发现我的服务器发送的邮件无法到达 yahoo、gmail 等邮件收件人。

经过研究,我发现我需要检查

  1. 端口 25

  2. 反向 DNS,这意味着接收者的 MTA 可以使用我的域名来检查我的服务器是否真的存在?

因此问题是:

  1. 在那些流行的邮件服务器中发送邮件之前我需要做什么吗?我需要注册一个mx记录吗?

  2. 有人可以简单解释一下反向 DNS 吗?

答案1

很难判断你的邮件在哪里失败了,你使用的是什么服务等?有错误消息吗?

需要考虑的几件事:

1) 确保您有一个指向有效 A 记录的 MX 记录(即 MX 记录:mail.yourdomain.com和 A 记录:mail.yourdomain.com points to 123.123.123.123

2) 检查您的邮件配置:大多数 SMTP 服务器未配置为开放服务器,因为垃圾邮件发送者可以使用您的邮件服务器发送邮件。查看“mynetworks”或允许的主机,并确保向您的服务器发送邮件的人都在此列表中。

3) 检查日志:为您的 MTA 打开详细日志记录。使用 postfix,编辑 /etc/postfix/master.cf 并在 smtpd 末尾附加“-v”(smtpd -v),默认情况下记录到 /var/log/messages

至于反向 DNS,只需确保您的邮件服务器的主机名是 FQDM(完全限定域名)并已为其分配适当的 A 记录即可。例如,如果您的服务器的公共地址是 123.123.123.123,而您机器的主机名是 mail.mydomain.com,那么您的 A 记录应该是指向 123.123.123.123 的 mail.mydomain.com。在 /etc/hosts 中,您应该有一个同名的条目(即 127.0.0.1 mail.mydomain.com localhost)或(123.123.123.123 mail.mydomain.com)

答案2

好的,如果您在家中设置邮件服务器,最好将其设置为到您的 ISP 邮件服务器或您可以进行身份​​验证的邮件服务器的中继。

最有可能的是,您需要设置身份验证,以便可以针对其他邮件服务器进行 SMTP AUTH。这种配置称为“智能主机”。以下是维基百科对此概念的解释:

http://en.wikipedia.org/wiki/Smart_host

如何设置取决于您使用的邮件服务器。以下是 Postfix 文档中的部分内容:http://www.postfix.org/postconf.5.html#relayhost

还应该有关于如何在 Postfix 中配置身份验证的文档。

您也不会使用端口 25。最有可能的是,您将连接到 SMTP 提交端口 587 或 SMTP SSL 端口 465。ISP 不会阻止这些端口。

相关内容