今天我遇到了一次类似 DDOS 攻击的情况。我的服务器提供商警告我 CPU 使用率过高(超过 6 小时,高达 400%),我无法访问任何网站,也无法通过 SSH 登录。Lish 控制台报告了类似“php-fpm 内存不足”的错误。
我唯一能做的就是硬重启。服务器再次启动后,我查看了 fail2ban 的状态,它显示“活动(已退出)”。我重新启动了它,然后查看了日志,结果如下:
fail2ban.log.2
:文件结尾为
2021-07-25 09:10:11,793 fail2ban.server [26723]: INFO Shutdown in progress...
2021-07-25 09:10:11,794 fail2ban.server [26723]: INFO Stopping all jails
2021-07-25 09:10:11,795 fail2ban.filter [26723]: INFO Removed logfile: '/var/log/auth.log'
2021-07-25 09:10:11,817 fail2ban.filter [26723]: INFO Removed logfile: '/var/log/apache2/error.log'
2021-07-25 09:10:12,062 fail2ban.actions [26723]: NOTICE [sshd] Flush ticket(s) with iptables-multiport
2021-07-25 09:10:12,070 fail2ban.actions [26723]: NOTICE [sshd] Unban [IP]
2021-07-25 09:10:12,070 fail2ban.actions [26723]: NOTICE [sshd] Unban [IP]
2021-07-25 09:10:12,070 fail2ban.actions [26723]: NOTICE [sshd] Unban [IP]
2021-07-25 09:10:12,070 fail2ban.actions [26723]: NOTICE [sshd] Unban [IP]
2021-07-25 09:10:12,070 fail2ban.actions [26723]: NOTICE [sshd] Unban [IP]
2021-07-25 09:10:12,082 fail2ban.jail [26723]: INFO Jail 'sshd' stopped
2021-07-25 09:10:12,189 fail2ban.actions [26723]: NOTICE [apache-noscript] Flush ticket(s) with iptables-multiport
2021-07-25 09:10:12,286 fail2ban.jail [26723]: INFO Jail 'apache-noscript' stopped
2021-07-25 09:10:12,289 fail2ban.database [26723]: INFO Connection to database closed.
2021-07-25 09:10:12,289 fail2ban.server [26723]: INFO Exiting Fail2ban
注意日期。
fail2ban.log.1
是一个空文件,
fail2ban.log
其中包含我重新启动上述服务导致的启动日志。
我需要了解有关此问题的更多信息。fail2ban 自 7 月 25 日起处于离线状态吗?它为什么退出?
我还检查了 php-fpm 日志,其中充满了类似这样的行
[05-Aug-2021 05:31:40] WARNING: [pool 154995045616202] seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 32 children, there are are 0 idle, and 2897 total children
是的,这会很快耗尽内存。如果我能找出哪个服务器/域启动了这些服务器,这将是调查的一个良好开端。
Ubuntu:18.04 长期支持
Fail2ban:0.10.2
更新:我认为这里发生的事情是服务器在 7 月 25 日重新启动,但 fail2ban 并未自动启动。我现在已经进行了必要的更改,它应该会恢复。我会在这里更新我发现的情况。