当 dovecot 关闭时,Postfix 拒绝 SASL 身份验证

当 dovecot 关闭时,Postfix 拒绝 SASL 身份验证

我们使用 Postfix 和 Dovecot,并通过 Dovecot 进行 SASL Auth(基于教程)。一切按预期运行。但是当 Dovecot 停机(例如由于维护或其他原因)时,客户端无法在 Postfix 上进行身份验证,并且 Postfix 会因为smtpd_recipient_restrictions以下原因拒绝客户端请求permit_sasl_authenticated

当 Dovecot 身份验证关闭时,是否有办法暂时拒绝到达 Postfix 的邮件?我们的 postfix 配置是:

smtpd_restriction_classes = check_sender_auth
check_sender_auth =
   reject_authenticated_sender_login_mismatch,
   permit_sasl_authenticated,
   reject
smtpd_recipient_restrictions =
   reject_invalid_helo_hostname,
   reject_non_fqdn_recipient,
   check_sender_access mysql:/etc/postfix/check_sender_domains,
   reject_non_fqdn_helo_hostname,
   [...]

check_sender_domains是一个查找表,返回check_sender_auth声称来自我们的发件人地址。

答案1

您可以将提交监听器的reject_code更改为450,这样就不是永久拒绝而是延迟。

check_sender_auth =
   defer_if_reject 
   reject_authenticated_sender_login_mismatch,
   permit_sasl_authenticated,
   reject

http://www.postfix.org/postconf.5.html#defer_if_reject了解详情。

不幸的是,当“dovecot 倒塌”时,更新起来并不简单,我承认这让我很困惑;为什么鸽舍 倒塌 了 吗 ?

如果由于鸽舍维护而遇到停机,您应该投入精力以避免鸽舍出现维护停机。

Dovecot 可以很好地运行 HA;您可以轻松地在另一台机器上仅为 SASL(无 IMAP 服务)运行辅助实例。

相关内容