同时向站点发送带有 JS 的请求会导致 CPU 激增

同时向站点发送带有 JS 的请求会导致 CPU 激增

有人对我网站上包含 JS 的特定页面发出大量请求。如果我不重启 Apache,CPU 负载就会增加到 100+。

我尝试过的: - 减少 KeepAlive 超时 - 安装了 mod_evasive(由于 MaxChildProcesses 似乎无法工作,基本上它已经安装并将 IP 列入黑名单,但我仍然可以刷新 20 次,它不会阻止任何东西) - 安装了 DDOS DEFLATE(没用,CSF 更好) - 配置 CSF 以保护端口 80 并禁止超过 50 个连接的 IP(许多误报仍然无法防止 CPU 峰值) - 安装了 limitipconn,却发现它根本无法与 apache 2 一起使用 - 启用 syn cookies 并减少各种 tcp 超时 - 优化网站以减少对 DDOS 攻击的修剪

实际上什么都没起作用,他们仍然可以随时让我的服务器崩溃。

有任何想法吗?

谢谢奥利弗

答案1

我并不完全相信这里的 Javascript 是造成您所看到的结果的原因。Javascript 完全由客户端处理,对于服务器而言,提供 Javascript 和提供纯文本并没有什么不同。

话虽如此,我还是有几个建议:1)完全放弃 CSF。它启用了 iptables conntrack 模块,基本上可以用来对你的网站进行 DDOS 攻击。(Conntrack 有一个表,用于存储有关任何当前连接的信息。当该表填满时,你的服务器将停止接受新连接)。使用一些简单的 iptables 规则,避免状态匹配

2) 在 Apache 之前放置更适合处理攻击的东西。Nginx 和 HAProxy 是不错的选择。只要有它们,就能击败所有类型的攻击。

3) 找出导致服务器崩溃的原因。是传入带宽吗?也许您有一个页面的服务非常耗费资源(不是 Javascript,正如我之前所说,这对服务器来说无关紧要)?是否有什么东西消耗了所有 Apache 工作程序?如果不知道问题的根源,就很难防范这些问题。

相关内容