如何配置 Exim 以丢弃备用 SMTP 端口上未经身份验证的连接?

如何配置 Exim 以丢弃备用 SMTP 端口上未经身份验证的连接?

我目前只允许来自邮件过滤服务的 IP 在端口 25 上进行连接。

我让 Exim 在备用端口上运行以进行 SMTP 提交。此端口目前需要允许非加密连接,因此我不能依赖在端口上强制使用 TLS。

我想配置 Exim 以丢弃备用端口上未经身份验证的 SMTP 连接,以防止垃圾邮件发送者连接并直接向用户发送垃圾邮件。

我该如何配置这个 ACL?

答案1

我们在 acl_check_rcpt 中使用以下规则,但我怀疑它们在 acl_check_helo 中效果会更好

deny
   condition      = ${if and{{eq{$interface_port}{587}} {eq{$tls_cipher}{}} } }
   message        = All port 587 connections must use TLS

deny condition    = ${if eq{$interface_port}{587}}
   !authenticated = *
   message        = All port 587 connections must be Authenticated

显然,您只需要两条规则中的第二条,但第一条规则显示了如何拒绝非 TLS 连接。如果您不打算强制执行 TLS,您可能需要考虑禁止纯文本身份验证方法。

相关内容