Postfix:如何处理发件人:和收件人:地址均不合法的退回电子邮件?

Postfix:如何处理发件人:和收件人:地址均不合法的退回电子邮件?

我们在大学环境中拥有两台 Postfix 邮件服务器。十几个不同的组管理着数千台服务器,而我并不控制所有主机。这些服务器使用我的邮件服务器来路由电子邮件,无论是作为智能主机还是使用 MX 记录。

多个服务器不断发送电子邮件,其发件人地址如下:

[email protected]

这些电子邮件被发送到无效地址,因此被退回。但由于“发件人:”地址也是无效的,这些电子邮件陷入了几天的无休止的退回循环中。

如果我列出 Postfix 队列,则会postqueue -p显示数百条如下消息:

ABCD7301713E     3799 Tue Mar  5 05:20:35  MAILER-DAEMON
(delivery temporarily suspended: connect to host.example.org[192.168.100.100]:25: Connection refused)
                                         [email protected]
  1. 在邮件服务器上使用 Postfix,是否可以重写这些电子邮件中的“发件人:”地址或“收件人:”地址?我想将它们发送给系统所有者并要求他们清理他们的系统。
  2. 我可以将这些退回邮件通知邮政局长吗?然后邮政局长可以通知系统所有者。

答案1

一旦解决方案是通知某人关于退回。postmaster 有时用于此任务。参数通知类bounce_notice_recipient可以允许我通知邮政局长邮件退回的情况。

退回邮件可能包含尝试发送电子邮件的主机的主机名和 IP。如果没有,管理员可以postcat在 Message-Id 上运行命令并查看邮件的内容(包括标题和所有内容)。从这里,我们可以联系系统所有者并要求他们修复他们那边的问题。

弹跳(也意味着2反弹

向 postmaster 发送退回邮件的邮件头副本,并在 Postfix 拒绝邮件时发送 SMTP 会话记录。通知将发送到 bounce_notice_recipient 配置参数指定的地址(默认值:postmaster)。

2反弹

将无法送达的退回邮件发送给邮政局长。通知将发送到使用 2bounce_notice_recipient 配置参数指定的地址(默认值:邮政局长)。

bounce_notice_recipient(默认值:postmaster)

Postfix 未投递邮件的邮件头和 Postfix 未收到邮件的 SMTP 对话记录的邮件管理员通知的收件人。此功能通过 notify_classes 参数启用。

2bounce_notice_recipient(默认:postmaster)

无法送达且无法返回给发件人的邮件的收件人。此功能通过notify_classes参数启用。

答案2

您是否考虑过在 SMTP 会话中拒绝具有无效信封发件人的邮件?


您可以选择以下选项之一:

  • 将“无响应的主机”添加到访问表采取 REJECT 操作
  • 使用策略过滤器
    Postfix 源代码树中的文件examples/smtpd-policy/greylist.pl实现了简化的灰名单策略服务器
  • 使用自定义米尔特
    MIMEDefang网站milter 让你用 Perl 表达你的过滤策略——如果你还打算添加垃圾邮件/病毒过滤,那么值得考虑

在我看来,会话拒绝就是应该在 SMTP 中可以完成,但是由于非技术原因,它经常没有完成。

相关内容