![当 MTA 无法连接到目标 MX 服务器时,它们是否总是将邮件排队?](https://linux22.com/image/530733/%E5%BD%93%20MTA%20%E6%97%A0%E6%B3%95%E8%BF%9E%E6%8E%A5%E5%88%B0%E7%9B%AE%E6%A0%87%20MX%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%97%B6%EF%BC%8C%E5%AE%83%E4%BB%AC%E6%98%AF%E5%90%A6%E6%80%BB%E6%98%AF%E5%B0%86%E9%82%AE%E4%BB%B6%E6%8E%92%E9%98%9F%EF%BC%9F.png)
在我们的(小型)办公室,我们正在决定是否将 MX 记录指向本地 Exchange 服务器。我有点担心停机,所以认为我应该设置一个备份 MX 服务器。然后我做了一些研究,找到了一个夫妻的帖子这表明它不一定值得付出努力,最明显的是,因为发送 MTA 会在放弃之前将邮件排队几天,这应该足以让你的事务井然有序。
我很高兴接受这一点,但我们购买新服务器的本地 IT 提供商坚持认为服务器并不总是排队邮件:有时它们会立即被退回。有人可以对此发表评论吗?
此外,我正在尝试找出标准对此事的规定(尽管我知道现实生活和标准并不总是一致的)。维基百科关于备份 MX 记录的文章说
SMTP 协议建立了一个存储转发网络,如果某个域的邮件服务器全部离线,则发送服务器需要将发往该域的消息排队,以便稍后重试。
看着RFC 821我找不到那部分,但我只是在浏览。如果存在相关部分,有人能指出吗?我还对有关在丢弃邮件之前应保留多长时间的任何部分感兴趣。
答案1
IT 提供商说得对,有些邮件确实会立即被退回。但是,根据我的经验,只有哑主机才会立即退回,智能主机才会排队。对于 MTA 在创建 DSN 之前将邮件排队多长时间,有一些事实上的标准,最常见的是 4 小时。与所有此类标准一样,存在很大的可变性。
倾向于通过愚蠢主机发送的邮件类型是直接来自 Web 应用程序的邮件,这些应用程序依赖于您的服务器足够聪明来处理异常。这些可能是您自己的应用程序,用于网络上的群发邮件。这些消息是一般来说较低级别的电子邮件,但并非总是如此。
如果您决定使用备用 MTA,则需要在其上安装反垃圾邮件功能。垃圾邮件发送者十多年来都知道,“备用”MTA 是最佳攻击目标,因为它们通常没有主 MTA 那样得到很好的保护。
答案2
我认为这不是必需的,但这是一种很好的做法。
排队和重试的标准值是“第一次重试 30 分钟,然后每 60 分钟重试一次,直到 12 小时过去;之后,每 6 小时重试一次,直到 72 小时过去,之后,以 12-24 小时为间隔再重试几次。如果邮件在 7 天内无法送达,则丢弃该电子邮件并(可选,现在有太多伪造的发件人)返回‘抱歉,无法送达’”。
无可否认,这主要是根据经验得出的,而且有些过时,因为我已经大约 4 年没有为工作目的运行邮件服务器了。
答案3
邮件服务器应该队列,但并非所有邮件服务器都表现良好。但由于电子邮件可能出现很多其他问题,我认识的大多数小型企业都不愿意备份,因为这似乎不划算。
如果您想这样做,您可能需要检查您的 ISP 是否将充当存储和中继备份邮件服务器,这意味着他们将代表您接受电子邮件并在可用时将其发送到您的服务器。(如果您的服务器和备份服务器都离线,则无济于事)。
根据我们的经验,我们的 ISP 提供这项服务,但这是一笔额外的费用,我们决定不承担。(十多年来它从未造成过问题,而且由于我们的客户群非常小且不懂技术,我相当肯定,如果他们在给我们发送电子邮件时遇到问题,他们会拿起电话联系我们)。