我已经在系统上设置了 fail2ban 并开始运行。在 中/etc/fail2ban/jail.local
,我的目标电子邮件如下:
destemail = [email protected]
然而,查看我的/var/log/mail.log
文件时,我不断看到:
Jul 23 21:19:04 picus sendmail[21205]: x6O1J489021205: from=fail2ban, size=210, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost
Jul 23 21:19:04 picus sm-mta[21207]: x6O1J4vh021207: from=<[email protected]>, size=461, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Jul 23 21:19:04 picus sendmail[21205]: x6O1J489021205: to=root, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30210, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (x6O1J4vh021207 Message accepted for delivery)
Jul 23 21:19:04 picus sm-mta[21208]: x6O1J4vh021207: to=linode, ctladdr=<[email protected]> (8/0), delay=00:00:00, mailer=local, pri=120461, dsn=5.1.1, stat=User unknown
Jul 23 21:19:04 picus sm-mta[21208]: x6O1J4vh021207: to=<[email protected]>, delay=00:00:00, mailer=local, pri=30680, dsn=5.1.1, stat=User unknown
Jul 23 21:19:04 picus sm-mta[21208]: x6O1J4vh021207: to=linode, ctladdr=root (8/0), delay=00:00:00, mailer=local, pri=30680, dsn=5.1.1, stat=User unknown
Jul 23 21:19:04 picus sm-mta[21208]: x6O1J4vh021207: x6O1J4vh021208: postmaster notify: User unknown
Jul 23 21:19:04 picus sm-mta[21208]: x6O1J4vh021208: to=linode, ctladdr=root (8/0), delay=00:00:00, mailer=local, pri=0, dsn=5.1.1, stat=User unknown
Jul 23 21:19:04 picus sm-mta[21208]: x6O1J4vh021208: to=linode, ctladdr=root (8/0), delay=00:00:00, mailer=local, pri=0, dsn=5.1.1, stat=User unknown
Jul 23 21:19:04 picus sm-mta[21208]: x6O1J4vh021208: x6O1J4vi021208: return to sender: User unknown
Jul 23 21:19:04 picus sm-mta[21208]: x6O1J4vi021208: to=linode, ctladdr=root (8/0), delay=00:00:00, mailer=local, pri=0, dsn=5.1.1, stat=User unknown
Jul 23 21:19:04 picus sm-mta[21208]: x6O1J4vh021208: Saved message in /var/lib/sendmail/dead.letter
它一直尝试将其发送到我机器上的 root 帐户,而不是我的电子邮件地址。我是否遗漏了某些配置选项?
编辑:经过一些修改,我能够稍微纠正一下这个问题。我改变了:
dest = root
到
dest = [email protected]
在/etc/fail2ban/action.d/mail.conf
。通过这一更改,我现在可以收到与我的 ssh/ssh-ddos jails 有关的电子邮件。 然而,我仍然没有收到来自我的惯犯监狱的电子邮件。查看/etc/fail2ban/jail.local
,我发现它调用了一些东西来整理/格式化该特定监狱中被禁帐户的各种 WHOIS 数据。
对各种配置文件进行进一步挖掘后,我发现/etc/fail2ban/action.d/sendmail-common.conf
,与我查看过的其他各种配置文件一样,它们也有dest = root
。
现在,我可以调整这些不同的配置文件,让它们全部使用我的电子邮件地址作为目的地,但我感觉这或多或少相当于将圆钉锤入方孔。有没有更好的方法可以强制 fail2ban 默认使用我的电子邮件作为目标地址?我的 sendmail 安装是否存在潜在的配置问题(我可以毫无问题地从 OSSEC 和我的 Web 应用程序接收电子邮件)?
答案1
我的 Debian 10 服务器上也遇到了同样的问题。这个问题很棘手,因为它并没有给出错误消息,因此无法追踪,因为没有真正的错误……
上面 Michael Hampton 给出了正确的提示。谢谢。
解决方案:
在您使用它的每条规则中设置 2 个电子邮件,然后它就突然起作用了。
就像这样:
[sshd]
enabled = true
port = 22
filter = sshd
logpath = /var/log/auth.log
sender = [email protected]
destemail = [email protected]
action = %(action_mwl)s
事实证明,尽管我在默认声明中拥有它,但它却没有被接受......没有给出错误......一些随机格式错误,如空行或注释等......