Tom*_*art 12 fail2ban systemd-journald
我已经安装fail2ban
在 Debian Jessie LXC 容器上,目前它失败的原因是:
Starting authentication failure monitor: fail2ban
ERROR No file(s) found for glob /var/log/auth.log
ERROR Failed during configuration: Have not found any log file for ssh jail
Run Code Online (Sandbox Code Playgroud)
系统上没有syslog
or rsyslog
,因此/var/log/auth.log
不会生成。有没有办法如何告诉fail2ban
使用输出journalctl _COMM=sshd
?
小智 13
对于 systemd 系统:
您必须指定/etc/fail2ban/jail.conf
要使用的后端,systemd
如下所示:
backend = systemd
Run Code Online (Sandbox Code Playgroud)
然后重启fail2ban:
systemctl restart fail2ban
Run Code Online (Sandbox Code Playgroud)
编辑:
我是一个沉重的 CentOS/RHEL/Fedora 人,所以你可能需要稍微调整一下我所说的。就这个答案而言,您可能需要将 fail2ban 软件包更新为支持 systemd 作为后端的版本,或者您必须安装rsyslog
以下内容并将其添加到您的/etc/rsyslog.conf
:
authpriv.* /var/log/auth.log
Run Code Online (Sandbox Code Playgroud)
这将确保 sshd auth 日志正在记录,fail2ban 中/var/log/auth.log
的默认pyinotify
后端将读取该日志:
小智 8
配置文件有问题。
我有jail.conf 和jail.d/defaults-debian.conf
后一篇的内容是:
[sshd]
enabled = true
Run Code Online (Sandbox Code Playgroud)
由于此处未设置后端,因此使用默认值而不是 中的值jail.conf
。该问题在这里详细描述:https ://github.com/fail2ban/fail2ban/issues/1372
添加backend = systemd
就成功了。
默认值-debian.conf
[sshd]
enabled = true
backend = systemd
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16507 次 |
最近记录: |