Postfix 不记录身份验证失败

Postfix 不记录身份验证失败

我有一个在 Ubuntu 18.04lts 上运行的 postfix 服务器,并启用了身份验证。

(来自 main.cf)

smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_tls_security_options = noanonymous
broken_sasl_auth_clients = yes
smtp_tls_security_level = may
smtpd_tls_security_level = may
smtpd_tls_auth_only = yes
smtp_tls_note_starttls_offer = yes

我想配置fail2ban来阻止暴力登录的尝试。我看到这样的活动爆发:

Jul  3 06:39:33 liv-e01-pg-inmail postfix/smtpd[27594]: disconnect from unknown[194.31.98.76] ehlo=1 auth=0/1 rset=1 quit=1 commands=3/4

(我相信“auth=0/1”表示身份验证尝试失败。)

互联网上有几个fail2ban方法,但是我见过的所有方法都在日志中寻找显式的身份验证失败报告,例如来自https://bobcares.com/blog/fail2ban-postfix-sasl/:

Aug 31 22:23:52 hostxyz postfix/smtpd[38697]: warning: unknown[192.168.xx.xx]: SASL LOGIN authentication failed: authentication failure

我的主机上没有记录此类日志条目(检查了 mail.log、syslog 和 auth.log)。我也没有看到日志中报告成功的身份验证事件(但我可以看到电子邮件正在处理)。

rsyslog 使用默认配置运行:

auth,authpriv.*                 /var/log/auth.log
*.*;auth,authpriv.none          -/var/log/syslog
kern.*                          -/var/log/kern.log
mail.*                          -/var/log/mail.log

我在这里缺少什么?

** 更新**

在 mail.log 中看到成功的身份验证尝试 - 但没有登录失败的迹象。

答案1

发现发生了什么事。

首先我尝试进行实验:

  • 使用错误的用户名/密码访问服务会产生预期的日志条目(但 postfix 需要几秒钟才能响应)
  • 在等待 postfix 响应时终止连接仍然会产生预期的日志条目
  • 输入用户名后但输入密码之前终止连接会产生预期的日志条目

因此,我然后设置 tcpdump 来侦听来自不断触发这些事件的地址之一的活动。

我发现客户端在没有先运行 STARTTLS 的情况下尝试进行身份验证,导致503 5.5.1 错误:未启用身份验证

尽管这似乎带来的风险很小,并且由于所有失败的身份验证尝试(包括这一次)都会导致包含“auth=0/[1-9]”的日志条目,因此我将其用于我的fail2ban 过滤器。

相关内容