我应该让电子邮件反弹还是发送给黑洞?

我的机器上有很多未使用(旧的,已死的)帐户。 他们中的许多人每天收到数以千计的电子邮件,所有垃圾邮件。

如果帐户被某人使用,我会让电子邮件反弹,以便任何试图与他们联系的人知道有问题。 然而,我不确定如何处理用于其他目的的数百个帐户,例如我用于请求我的电子邮件地址的网站的丢弃帐户,或者我曾经在网页上列出的地址。

选项1:
将这些帐户的所有邮件转发到/dev/null 。 发件人没有收到反弹。

选项2:
让电子邮件反弹。

将电子邮件发送到/dev/null的好处是垃圾邮件发送者不能使用我来生成退回邮件(Backscatter spam) 。 即:伪造“从”线成为他们不喜欢的人,然后用我发送大量弹跳信息给那个人。

反弹他们的好处是,这对我来说不那么维护。 我可以从我的别名文件中删除项目,电子邮件将popup。 此外,我一直在发现新的垃圾邮件陷阱,并将其添加到我的“垃圾邮件黑洞”列表中,这是浪费时间。

每种方法的优缺点是什么?

    只要你一开始拒绝接收邮件,那么垃圾邮件发送者就不能用你来惹恼那些无辜的人,反弹很多。

    您可以在RCPT TO命令上返回一个错误,这通常是在地址不存在的情况下发生,也可以在RCPT TO命令上返回成功,但在DATA结束时返回一个错误。

    在这两种情况下,最终的结果都是一样的。 您的邮件服务器不负责邮件,发送邮件服务器现在负责反弹。 在垃圾邮件的情况下,这意味着垃圾邮件发送者将不得不产生反弹。 (如果这就是他们想做的事情,那么他们本来可以做到这一点,甚至没有试图把邮件发送给你。

    我认为这种方法没有问题。

    但是,我接受邮件时发现问题。 也就是说,如果您的邮件服务器通过包括DATA在内的交易成功完成响应,那么交付邮件成为邮件服务器的责任。 这是个问题,因为你没有合适的出路。

    • 悄悄地丢弃邮件是一个问题,因为如果有合法的邮件被发送,发件人永远不会知道它没有被发送。
    • 从您的邮件服务器发送反弹是一个问题,因为在这种情况下,垃圾邮件会跳到一些无辜的人的邮箱,而不是回到垃圾邮件发送者身上。

    在某些情况下,邮件地址的分配如此有限,您知道不能有任何合法的邮件发送到该地址。 在这种情况下,如果您拒绝RCPT TO命令,或者接受邮件并悄悄丢弃邮件,则几乎没有区别。 但是我不能想出一个这样的情况:在SMTP交易过程中,默默地放弃邮件比拒绝邮件更好。

    我将使这个答案相当通用,因为术语和configuration细节将取决于您的特定邮件服务器/垃圾邮件过滤软件。

    实际上对于一个无效的收件人有三种方法:

    1. 收件人被确定为无效后,发送一个Undeliverable消息回发件人。

    2. 消息仍处于“正在运行”状态时closuresSMTP连接。 发件人的SMTP服务器将负责生成Undeliverable消息。

    3. 接受消息并以静默方式将其删除。 发件人不知道邮件是否被收到。

    再也没有理由使用方法1了。 在Backscatter攻击的情况下,您的服务器将看起来像垃圾邮件发送者(即使它是一个无辜的受害者),您将成为被列入黑名单的人。 它还会在您的服务器上加载更多的负载并上传带宽,因为它必须发送退回消息。

    方法2比方法1好得多。 它可以降低您的服务器被列入黑名单或拒绝服务的可能性。 它并不能消除反对无辜的第三方地址的反向散射的可能性,但至less你的服务器不是发送反弹消息的那个服务器。

    方法#3消除了反向散射的可能性。 这也有助于防止目录收获攻击 。 但是,这也意味着如果外部发件人错误input了您的地址,他们将永远不会知道。 如果有人离开你的公司,也可能是一个问题,一个客户试图联系前雇员。

    由于担心DHA,我inheritance了使用方法3的电子邮件系统。 它造成了比它值得的更多的麻烦。 我们现在使用方法#2。 (请注意,还有其他方法可以缓解DHA。)

    如果您的电子邮件服务器configuration正确,则应在SMTP交易过程中拒绝向未知用户发送电子邮件。

    在SMTP交易中拒绝电子邮件

    您的服务器应configuration为在SMTP交易阶段拒绝给未知用户的电子邮件。 这样做会向发送服务器返回一个550 SMTP错误代码。 由于这种情况发生在SMTP交易中,您的服务器永远不会发送“未送达报告”(又名反弹)。

    正确configuration,这可以防止反向散射,因为拒绝是直接发送到发送服务器和其他电子邮件标头被忽略。

    优点

    这种方法的好处是,您在SMTP交易过程中很快拒绝电子邮件。 这可能意味着:

    • 降低服务器上的资源利用率,特别是在所有电子邮件被接受后(病毒/ AV过滤)发送进行处理的情况下。
    • 发件人通常会从列表中删除这些电子邮件地址,以防止被列入黑名单。

    考虑一下,如果您将电子邮件路由为空,则发送服务器认为邮件已成功传递。 他们没有理由停止发送这些不存在的地址。 因此,随着这些旧地址的堆积,您需要越来越多的服务器资源来处理电子邮件。

    要实现这一点,你只需要从电子邮件系统中删除用户。 如果您需要备份当前的电子邮件,那很好,您只需要您的服务器发送550 user unknown响应。