0

我有一个运行 Exim4-daemon-heavy 的 Debian Etch 系统。

该系统对互联网开放,但其目的是只接收来自垃圾邮件过滤服务的合法邮件,该服务作为其前面的代理运行。(不过,我不能只限制对这些 IP 的访问,因为我确实有一些授权用户通过我的服务器在端口 25 上进行中继。我知道我应该使用 587 - 但目前我不是。)

这个工作的一般方式是:

[Internet] -> [SMTP 代理] -> [我的服务器]

不幸的是,我让垃圾邮件发送者直接向邮件服务器发送邮件,而忽略了 MX 记录。所以看起来我明显的解决方案是:

  1. 在 SMTP 代理上为每条已处理的邮件添加一个标头。
  2. 除非邮件来自授权的中继器,否则在我的服务器上为每条传入消息添加一个标头。(即完成 SMTP AUTH 的人。)

这样我就可以使用 procmail 来处理直接发送的垃圾邮件,这些邮件是通过忽略我的 MX 记录的发件人发送的。

我很确定 Exim4 可能会被强制添加诸如“X-Submitter: $ip”之类的标头 - 以记录提交消息的远程 IP,但我不确定应该如何完成。

4

1 回答 1

2

请注意,debian 以一种相当独特的方式重新打包 exim,这使得它们的打包和维护更容易,但使用通用规则有时无法顺利插入。

处理此问题的正确方法是拒绝未经授权且不是来自代理 IP 的邮件。在你的 rcpt ACL 中加入这样的内容:

deny message = quit trying to bypass DNS
     !hosts = PROXY_IP_ADDRESS
     !authenticated = *
于 2008-09-23T20:14:33.717 回答