在 SMTP 中,如何在“接受而不是退回”与“在边缘退回”之间进行选择?

Chr*_*ski 4 email smtp rfc

似乎有多种 SMTP 实现,它们要么立即拒绝邮件,要么接受其他邮件,然后退回邮件。

在操作上,accept-than-bounce 有点难使用,因为头通常更复杂。

  • 有人会使用接受而不是反弹或立即反弹架构的原因是什么?

  • 有哪些错误思维的例子?(例如,如果设置了唯一的发件人,则接受而不是退回可以检测无效的电子邮件地址.. VERP)

小智 9

不要做接受和退回,在连接时做尽可能多的过滤/拒绝。这有助于防止Backscatter EmailsJoe Jobs,并使不需要的电子邮件远离您的邮件系统。

  • @makerofthings7 如果您担心目录收集攻击,请对尝试将邮件发送到无效地址的主机实施指数退避限制。Accept-and-Bounce 是 *** 坏事*** -- 它违反了 SMTP RFC 的核心方面(对于无法投递或拒绝的邮件,您应该返回“5xx”)并产生无用的互联网流量。它还会占用您邮件队列中的空间,并使您成为可用于 [反向分散垃圾邮件](http://en.wikipedia.org/wiki/Backscatter_(email)) 的可行主机,就像 Bob 所说的,**将**让你被列入黑名单。 (2认同)

Bil*_*hor 6

首选选项是立即在 Internet 网关处退回。这会导致您拒绝的服务器(很可能是垃圾邮件机器人)出现故障。但是,使用它来检查电子邮件地址是否存在更简单。

对于 Internet 网关而言,接受和退回更简单,但会生成反向散射垃圾邮件。实际上,您让您的服务器协助分发垃圾邮件。这是因为很容易伪造用于路由退回邮件的地址。这种方法会使确定地址是否有效变得更加困难,因为您需要使用有效的电子邮件地址作为发件人。

VRFY 选项最初旨在用于验证地址的存在。当系统管理员或多或少相互认识时,它运行良好。现在几乎任何人都可以设置邮件服务器,所需的信任不再存在。可以使用各种技术来解决这个问题。其中一些是:

  • 将尝试访问多个地址而不发送消息的主机列入黑名单或以其他方式处罚。
  • 使用只会被垃圾邮件发送者使用的电子邮件地址在网络中播种。这些可用于识别发送垃圾邮件的主机。(但是,免费邮件发送者很可能会受到这条规则的影响。)
  • 灰名单地址。这可能需要多次尝试来验证地址。
  • 接受所有收件人并将递送至无效地址。我使用的至少一台邮件服务器是这样做的。我管理的服务器对一些已知只接收垃圾邮件的收件人执行此操作。