这是我的情况:我有一个 ec2 实例,其中有 5 个虚拟主机运行 apache2。有时,随机,由于 Apache,CPU 使用率超过 80%。网站不太复杂,甚至没有太多流量,但内容丰富。
我们认为这是一次 DoS 攻击,或者字典攻击(针对 SSH)。该实例在 sshd.conf 中有 fail2ban 和 strong 参数。
有没有办法准确跟踪 apache 中的进程?我发现我不是唯一一个在 apache 和 ec2 实例中遇到此问题的人
答案1
如果由于 Apache 导致 CPU 利用率超过 80%,那么问题就出在 Apache 上,而不是 SSH 或其他服务/应用程序上。
您可以检查 apache2 access_log,如果它的大小很大或者包含大量流量,那么您确实受到了 DoS 攻击。
为了防止这种情况,您可以使用 Cloudflare 或其他服务等 WAF。
您没有提供有关服务器规格或估计流量的信息,因此问题可能是您的 EC2 实例处于配置状态(需要升级)。