我是否正确缓解了 DDOS 攻击?

我是否正确缓解了 DDOS 攻击?

昨晚我的论坛遭受了 DDOS 攻击。我确认这是一次 HTTP 洪水攻击。 CloudFlare 请求分析 我做的第一件事就是启用 CloudFlare 检查您的浏览器。它阻止了大量请求,Apache 又开始响应了。

接下来,我在 MyBB 上收到一条消息,说打开了太多 MySQL 连接。所以我停止了 apache 和 MySQL。

我继续将连接限制提升到 10,000,我的网络服务器是否能够处理则是另一个问题,但限制不再会导致错误。

接下来我启动了 MySQL,然后是 Apache。由于要检查浏览器,此时攻击只有 200 个连接。

之后,我调整了 AWS 的防火墙设置,只允许来自 CloudFlare IP 范围的连接。然后保存了设置

此时网站已恢复。我是否遗漏了任何步骤。我如何才能阻止将来的 HTTP 洪水攻击?

答案1

您可以尝试使用 iptables 来防止 DDoS 的一些方法如下:

致残SYN Flood攻击

  iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP

限制来自同一 IP 地址的并发连接数

  iptables -A INPUT -p tcp --dport 80 -m state --state NEW -m limit --limit 100/minute --limit-burst 500 -j ACCEPT  

这里,允许 500 个新连接,但每分钟不能超过 100 个新连接的限制。

更多规则,你可以在这里找到 iptables 规则如何对抗最常见的 DoS 攻击?

相关内容