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

[复制链接] |主动推送
查看28 | 回复0 | 2024-9-11 15:08:07 | 显示全部楼层 |阅读模式
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 个并发连接)。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则