老橡树1 发表于 2024-9-11 15:08:07

防御CC攻击:nginx服务器的策略与技巧

CC攻击(Challenge Collapsar Attack)是一种网络攻击方式,其目的是通过大量合法或伪造的小流量请求,耗尽服务器资源,导致正常用户无法访问,也称为“连接数攻击”或“请求速率限制攻击”。要在 Nginx 中防止 CC 攻击,首先需要修改nginx的配置文件。


1.使用 Nginx 的 limit_req 模块可以限制单个IP地址在一定时间内的请求次数。


http {
    limit_req_zone $binary_remote_addr zone=myzone:10m rate=5r/s;


    server {
      location / {
            limit_req zone=myzone burst=10 nodelay;
      }
    }
}


在上述配置中,limit_req_zone 指令定义了一个名为 myzone 的内存区域,它跟踪源 IP 地址,并且限定了每个 IP 每秒可以发起的请求次数(例如 rate=5r/s)。burst 参数允许突增连接数而不会立即返回错误,而 nodelay 参数可以使得请求不会因为超过速率而被延迟。


2.使用 Nginx 的 limit_conn 模块可以限制单个IP地址的并发连接数。


http {
    limit_conn_zone $binary_remote_addr zone=addr:10m;


    server {
      location / {
            limit_conn addr 5;
      }
    }
}


这里定义了一个名为 addr 的内存区域来跟踪并限制并发连接数(例如 limit_conn addr 5 表示每个 IP 最多可以有 5 个并发连接)。
页: [1]
查看完整版本: 防御CC攻击:nginx服务器的策略与技巧