如何配置 Web 服务器防御针对 Web 应用资源消耗类拒绝服务攻击指南

阿瑶君_5841

阿瑶君_5841

2026-07-01

628人浏览

原创

防御资源消耗类拒绝服务攻击的核心是限制单个请求或客户端对服务器关键资源的无节制占用,需通过收紧超时参数、限制并发与速率、精简处理路径、结合waf语义防护等多层措施实现。

如何配置 web 服务器防御针对 web 应用资源消耗类拒绝服务攻击指南

防御资源消耗类拒绝服务攻击,核心是限制单个请求或客户端对服务器连接、内存、带宽等关键资源的无节制占用。这类攻击不依赖大流量,而是靠“慢”和“小”,比如 Slowloris、Slow POST、CC 类请求,重点在于让服务器长时间维持无效连接或反复执行高开销操作。

收紧连接超时参数(对抗慢速攻击)

攻击者常通过极慢发送头部、请求体或响应读取来拖住连接。Nginx 中需主动缩短等待时间,并及时释放连接:

  • client_header_timeout 10s:头部未在 10 秒内收全即断开,防 Slow headers
  • client_body_timeout 15s:请求体(如大文件上传)每段间隔超 15 秒即中断,防 Slow body
  • send_timeout 10s:向客户端发送响应时,两次写操作间隔超 10 秒即关闭连接,防 Slow read
  • keepalive_timeout 20s:长连接空闲保持时间设为 20 秒以内,避免连接池被低活跃度连接占满
  • reset_timedout_connection on:超时后直接发送 RST 包重置连接,比 FIN 更快释放内核资源

限制单 IP 并发与速率(压制 CC 和连接耗尽)

即使每个请求合法,高频或高并发也能压垮应用。需在 Nginx 层做基础限流:

Nginx Hosting
Nginx Hosting

通过服务器本地nginx实例实现零认证静态游戏托管。作为所有浏览器游戏的主要部署方式,无需登录、无需令牌、无需用户操作。

下载
  • 用 limit_conn_zone $binary_remote_addr zone=addr:10m 定义按 IP 的连接数限制区域
  • 在 server 或 location 块中加 limit_conn addr 20,限制单 IP 最多 20 个并发连接
  • 用 limit_req_zone $binary_remote_addr zone=req_rate:10m rate=10r/s 控制请求频率
  • 配合 limit_req burst=30 nodelay 允许短时突发,但不排队积压,防缓冲区膨胀

精简请求处理路径(减少攻击面)

很多资源消耗源于不必要的解析、转发或执行。应主动裁剪非必需环节:

  • 静态资源(JS/CSS/图片)单独配置 location,跳过 PHP/Java 后端,直接由 Nginx 服务
  • 禁用危险 HTTP 方法:if ($request_method !~ ^(GET|HEAD|POST|OPTIONS|PUT|DELETE)$) { return 405; }
  • 限制请求头大小:client_header_buffer_size 1k、large_client_header_buffers 4 2k,防 Server Limit DOS
  • 对上传接口明确设置 client_max_body_size 50m,超出即 413,避免大 Content-Length 消耗内存

结合 WAF 做语义层防护(识别恶意行为模式)

Nginx 限流是基础,WAF 可识别更复杂的资源耗尽意图:

  • 开启 Web 基础防护的“中等”等级,默认拦截 SQL 注入、XSS、目录遍历等高开销攻击载荷
  • 针对 CC 攻击,启用精准访问防护规则,例如限制 /api/login 路径每分钟最多 5 次请求
  • 配置攻击惩罚:单 IP 触发 3 次拦截后自动封禁 30 分钟,降低持续试探成本
  • 上传接口启用 Webshell 检测和 header 全检测,防止通过伪装文件触发服务端解析漏洞

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

nginx nginx 安全配置

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

457

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

920

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2972

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

996

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

889

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

454

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2696

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

5032

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

787

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
phpEnv手册
phpEnv手册

共0课时 | 0人学习

nginx手册
nginx手册

共0课时 | 0人学习

进程与SOCKET
进程与SOCKET

共6课时 | 0.5万人学习