CentOS8下服务日志切割后Fail2ban无法正常跟踪的解决方法
一.Fail2ban软件下载
https://github.com/fail2ban/fail2ban
二.Nginx日志切割
accesslog=’/usr/local/nginx/logs/access.log’;
errorlog=’/usr/local/nginx/logs/error.log’;
echo > $accesslog;
echo > $errorlog;
三.Fail2ban在日志切割后无法跟踪日志fail2ban.sqlite3中logs表中的pos点
fail2ban-client stop
sqlite3 /var/lib/fail2ban/fail2ban.sqlite3 “delete from logs”
fail2ban-client start
四.Shell脚本编写
vi /usr/local/src/refail2ban.sh
#!/bin/bash
#切割日志
accesslog=’/usr/local/nginx/logs/access.log’;
errorlog=’/usr/local/nginx/logs/error.log’;
echo > $accesslog;
echo > $errorlog;
#Fail2ban问题解决
fail2ban-client stop
sqlite3 /var/lib/fail2ban/fail2ban.sqlite3 “delete from logs”
fail2ban-client start
五.Crontab任务计划,定期执行refail2ban.sh脚本
crontab -e
0 0 * * 1 /usr/local/src/refail2ban.sh
六.Fail2ban更为详细的内容请大家参考一下我亲自录制的两门Fail2ban视频教程,教程不仅仅只讲了Fail2ban,涉及更详细的Linux CentOS8系统安全问题与设计,适合商用:
1.CentOS8服务器安全基础篇/全国独家打造
http://www.yzmedu.com/course/394
2.CentOS8服务器安全高级篇/全国独家打造
http://www.yzmedu.com/course/395
到此问题解决,到目前为到Fail2ban官方还没有解决这个bug,只能自己Shell脚本来解决此问题,可能会影响很多的中小微企业的服务器的安全问题,问题的关键在于Fail2ban背后的fail2ban.sqlite3数据库中的logs表问题,其他的表没有问题!!!
2 COMMENTS