Postfix 阻止除一个 IP 之外的所有 IP 作为发件人

Postfix 阻止除一个 IP 之外的所有 IP 作为发件人

我正在尝试在非标准 smtp 端口上设置额外的 Postfix smtpd 服务,这允许不使用 TLS 的 smtp 身份验证来支持无法使用 TLS 的旧打印机(通过电子邮件发送扫描和报告)。但是,此打印机仍应提供有效的用户名和密码。

这是服务定义master.cf

50025     inet  n       -       -       -       -       smtpd
  -o smtpd_tls_auth_only=no
  -o { smtpd_client_restrictions=check_client_access hash:/etc/postfix/printer_whitelist,permit_sasl_authenticated,reject }

/etc/postfix/printer_whitelist

8.8.8.8 OK
0.0.0.0/0 REJECT

理论上这应该

  • 拒绝所有没有 IP 的客户端8.8.8.8
  • 允许8.8.8.8,但前提是身份验证成功

实际上,该printer_whitelist表似乎不能正常工作。除了上面定义的拒绝之外,我还尝试了0.0.0.0/32 REJECT, 。0.0.0.0 REJECT* REJECT

我怎样才能匹配出规则之后被拒绝的所有客户端OK

答案1

使用cidr:/etc/postfix/printer_whitelist而不是hash:/etc/postfix/printer_whitelist解决了这个问题。

相关内容