防御DDOS是一个系统工程,攻击花样多,防御的成本高瓶颈多,防御起来即被动又无奈。DDOS的特点是分布式,针对带宽和服务攻击,也就 是四层流量攻击和七层应用攻击,相应的防御瓶颈四层在带宽,七层的多在架构的吞吐量。对于七层的应用攻击,我们还是可以做一些配置来防御的。

例如前端是Nginx,主要使用nginx的http_limit_conn和http_limit_req模块来防御。 ngx_http_limit_conn_module 可以限制单个IP的连接数,ngx_http_limit_req_module可以限制单个IP每秒请求数,通过限制连接数和请求数能相对有效的防御CC攻击。

下面是配置方法:

限制每秒请求数

ngx_http_limit_req_module模块通过漏桶原理来限制单位时间内的请求数,一旦单位时间内请求数超过限制,就会返回503错误。配置需要在两个地方设置:

nginx.conf的http段内定义触发条件,可以有多个条件

在location内定义达到触发条件时nginx所要执行的动作

例如:http {

limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s; //触发条件,所有访问ip 限制每秒10个请求 ...

server { ...

location ~ \.php$ {

limit_req zone=one burst=5 nodelay; //执行的动作,通过zone名字对应

}

}

}

参数说明:$binary_remote_addr 二进制远程地址

zone=one:10m 定义zone名字叫one,并为这个zone分配10M内存,用来存储会话(二进制远程地址),1m内存可以保存16000会话

rate=10r/s; 限制频率为每秒10个请求

burst=5 允许超过频率限制的请求数不多于5个,假设1、2、3、4秒请求为每秒9个,那么第5秒内请求15个是允许的,反之,如果第一秒内请求15个,会将5个请求放到第二秒,第二秒内超过10的请求直接503,类似多秒内平均速率限制。

nodelay 超过的请求不被延迟处理,设置后15个请求在1秒内处理。

限制IP连接数

ngx_http_limit_conn_module的配置方法和参数与http_limit_req模块很像,参数少,要简单很多http {

limit_conn_zone $binary_remote_addr zone=addr:10m; //触发条件 ...

server { ...

location /download/ {

limit_conn addr 1; // 限制同一时间内1个连接,超出的连接返回503

}

}

}

更多Nginx相关技术文章,请访问Nginx使用教程栏目进行学习!

nginx php 防护,nginx怎么防ddos攻击相关推荐

  1. 阿里云盾特点及防DDoS攻击服务介绍

    阿里云盾特点及防DDoS攻击服务介绍 云盾是阿里巴巴集团多年来安全技术研究积累的成果,结合强大的威胁发现和分析能力,为用户提供一站式安全服务.云盾是阿里云产品的统称,核心产品是安骑士.DDoS防护.W ...

  2. linux下防DDOS攻击软件及使用方法详解

    互联网如同现实社会一样充满钩心斗角,网站被DDOS也成为站长最头疼的事.在没有硬防的情况下,寻找软件代替是最直接的方法,比如用 iptables,但是iptables不能在自动屏蔽,只能手动屏蔽. 一 ...

  3. wordpress国内网速慢加速及防DDOS攻击快速CF切换教程

    wordpress国内网速慢加速及防DDOS攻击快速CF切换教程标题 一.现网站的情况分析 二.网站搬迁 1.操作系统选择 2.命令行 第一步:安装nginx 第二步:开启防火墙 第三步:安装mysq ...

  4. 阿里云服务器如何防DDOS攻击

    阿里云服务器如何防DDOS攻击?下面小编就为大家介绍下阿里云服务器如何防DDOS攻击 方法/步骤 首先登陆阿里云控制台,点击左侧的产品与服务 点击DDOS基础防护进入云盾-DDOS基础安全控制台里面 ...

  5. html5 防止脚本攻击,shell防ddos攻击脚本(二)

    在上一篇shell防ddos攻击脚本(一)中,我给大家发了个脚本,那只是针对单机的,如果是在负载均衡下的话,很容易把自己的服务器ip给误封,所以这篇文章就给大家发个可以添加白名单的shell脚本. 系 ...

  6. ddos攻击是什么 怎么防ddos攻击教程

    ddos攻击是什么,想必这是很多使用电脑者都不知道又很想知道的一个问题,总感觉ddos攻击是个很厉害的东西,ddos攻击一开始是叫dos攻击-拒絕服務(Denial of Service)攻擊,DDO ...

  7. 对于防DDOS攻击和双机热备的理解

    防DDos攻击 DDos意为分布式拒绝服务,那什么又是DOS拒绝服务呢?凡是能够导致合法用户不能够访问正常网络服务的行为都算是拒绝服务攻击.也就是说拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常 ...

  8. 为CentOS安装防DDOS攻击软件DDoS-Deflate

    DDoS-Deflate是一款非常小巧的防御和减轻DDoS攻击的工具,它可以通过监测netstat来跟踪来创建大量互联网连接的IP地址信息,通过APF或IPTABLES禁止或阻档这些非常IP地址. 我 ...

  9. 20210813 数据摆渡、DNS、分布式、分布式数据库、防ddos攻击、链路负载均衡

    数据摆渡 数据摆渡是什么?摆渡的意思是,在没有道路的时候,坐船度过这片水域到达对岸. 数据摆渡顾名思义,是指在没有物理连接的情况下,数据通过隔离部件从源端到达目的端. 再通俗一点,就是通过具有存储介质 ...

  10. Spring Cloud Zuul防DDOS攻击

    前一段时间,公司的短信服务经常收到预警,当时初步猜测我们的短信服务受到了攻击,于是想到了两种实现方案. 方案一: 采用nginx防止DDOS(网上有很多案例可以借鉴) 方案二: 采用Spring Cl ...

最新文章

  1. JAVA编程语言的基础知识(六)
  2. Jquery获取参数(解决参数中文乱码问题)
  3. UA MATH575B 数值分析下I 梯度下降
  4. WinAPI: GetSystemPowerStatus - 获取系统电源状态的信息
  5. servlet和action的区别
  6. load out mysql,快速的mysql导入导出数据(load data和outfile)
  7. Base64的编码实现原理攻略
  8. 计算机开机不正常运行,win7 64位旗舰版电脑开机启动不正常怎么办
  9. python生成器函数的使用(模拟cycle函数)
  10. 【java笔记】转换流
  11. WEB测试与APP测试重点及区别
  12. JavaScript Date Format
  13. java简历的专业技能,java程序员专业技能简历范文
  14. 旋风解析磁力php,2018年免费引擎和正版旋风四核引擎棋力测试分析
  15. iso sqlserver2012sp1_SQL Sever 各版本下载
  16. 隐藏于世的网站内页seo优化技术
  17. python根据excel数据生成柱状图并导出成图片格式
  18. FaWave(发微)多微博版内测
  19. Internet选项 添加信任站点
  20. python:os.chdir()

热门文章

  1. 关于滑轮组的计算机知识点,关于滑轮组的知识点总结
  2. 四、mybatis查询和结果映射
  3. 重要的节日那么多,要及时「缓存」你们的珍贵时光
  4. 为什么我们写不出10万+的爆款文
  5. ActivityGroup使用实例2
  6. Docker 使用Dockerfile 构建Hadoop镜像与集群实例
  7. 塔漫的服务器在维修吗,天下第一塔——开封铁塔,您知道是怎么维修的吗?
  8. 机器学习系列(12)_XGBoost参数调优完全指南(附Python代码)
  9. java学业有成_学业有成的祝福语
  10. echarts实现矩阵图(线性相关图)