如何通过自动将攻击者 IP 添加到拒绝列表来减轻 DDoS 攻击?

如何通过自动将攻击者 IP 添加到拒绝列表来减轻 DDoS 攻击?

Web 服务器:nginx

我正在寻找一种技术来自动阻止 IP 地址,例如当攻击者 IP 每分钟发出超过 100 个请求时。

关联:https://www.nginx.com/blog/mitigating-ddos-attacks-with-nginx-and-nginx-plus/

上面的文章提到了基于请求数和连接数对每个用户的速率进行限制。这个问题不是关于速率限制,而是关于拒绝 IP。

上述文章中有一节关于将 IP 地址列入拒绝名单的内容 - 其中写道:

如果您可以识别用于攻击的客户端 IP 地址,则可以使用拒绝指令将其列入黑名单,以便 NGINX 和 NGINX Plus 不接受它们的连接或请求。

我相信这是一个手动过程,用于观察用于攻击的 IP 地址,然后将其添加到拒绝列表中。有没有简单的方法可以自动执行此操作?

答案1

请参阅 NGINX 文章 使用 NGINX 和 NGINX Plus 缓解 DDoS 攻击

它列出了以下方法:

  • 限制请求率
  • 限制连接数
  • 关闭慢速连接
  • 将 IP 地址列入黑名单
  • 将 IP 地址列入允许名单
  • 使用缓存来平滑流量高峰
  • 阻止请求
  • 限制与后端服务器的连接
  • 应对范围攻击
  • 处理高负荷
  • 识别 DDoS 攻击。

虽然这些措施不包括自动识别 DDoS 攻击和将 IP 添加到拒绝列表的机制,但它们将有助于保护您的网站。

我注意到,DDOS 攻击通常由数十万台攻击计算机发起,这些计算机全部受感染并像僵尸一样运行。将它们的所有 IP 都添加到拒绝列表中肯定很麻烦,如果 NGINX 每次收到连接时都必须遍历整个列表,则它们的添加可能会大大降低 NGINX 正常运行的速度。

相关内容