2019独角兽企业重金招聘Python工程师标准>>>

首先我们先了解一下配置文件中 关于 attack 的配置 Lighttpd配置中,关于超时的参数有如下几个 :

server.max-keep-alive-idle = 5
server.max-read-idle = 60
server.read-timeout = 0
server.max-connection-idle = 360

这几个参数意思相近,配置的时候很容易搞混。

对于一个keep-alive连接上的连续请求,发送第一个请求内容的最大间隔由参数max-read-idle决定,从第二个请求起,发送请求内容的最大间隔由参数max-keep-alive-idle决定。请求间的间隔超时也由max-keep-alive-idle决定。发送请求内容的总时间超时由参数read-timeout决定。Lighttpd与后端交互数据的超时由max-connection-idle决定。

还有

server.modules  = (                              "mod_evasive",
)
evasive.max-conns-per-ip = 2 

如果要限制流量,可以做如下设置:

connection.kbytes-per-second = 128 //此参数默认值为0,表示无限制evasive.max-conns-per-ip = 3 //单IP最大的连接数

然后我们再了解一下 Slow HTTP Denial of Service Attack 的攻击行为

利用的HTTP POST:POST的时候,指定一个非常大的

content-length,然后以很低的速度发包,比如10-100s发一个字节,hold住这个连接不断开。这样当客户端连接多了后,占用住了webserver的所有可用连接,从而导致DOS。

简单防御办法就是 对web服务器的http头部传输的最大许可时间进行限制,修改成最大许可时间。

那么怎么才能达到解决这个问题的目的呢?

#Slow attack
server.modules  = (                              "mod_evasive",
) //开启防御模块
evasive.max-conns-per-ip = 50  //限制ip 数量
server.max-keep-alive-idle = 10 //根据实际情况越小越好
server.max-read-idle = 6 //根据实际情况越小越好

设置好以后,重启lighttpd 我们再通过漏扫软件进行测试,发现 Slow HTTP Denial of Service Attack 漏洞已经解除了。

转载于:https://my.oschina.net/u/3338945/blog/1842698

lighttpd防御 Slow HTTP Denial of Service Attack 解决办法相关推荐

  1. Slow HTTP Denial of Service Attack | 如何证明

    文章目录 前言 原理 利用 修复 不浪费大家时间去看这个吧:https://www.cnblogs.com/andashu/p/6344306.html 前言 今天用awvs给网站做扫描,然后AWVS ...

  2. shiro框架,自定义realm注入service失败解决办法

    shiro框架,自定义realm注入service失败解决办法 报错如下: org.springframework.beans.factory.BeanCreationException: Error ...

  3. 安装Mysql时出现服务未启动(start service)解决办法

    安装Mysql时出现服务未启动(start service)解决办法 1.去控制面板卸载 2.删除Mysql卸载残留文件 3.管理员删除mysql服务 4.重新安装(注意事项!!!) 1.去控制面板卸 ...

  4. dubbo forbid service的解决办法

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 017-05-31 10:36:54.523 [http-nio-8080-exec-5] ERRO ...

  5. mySQL | unrecognized service 错误解决办法

    mysql启动不了,解决mysql: unrecognized service错误的方法如下: 情景再现 - 错误提示 解决方案

  6. Android:调用其他程序中的activity和Permission Denial: starting Intent 错误解决办法

    今天想调试多个task中栈的情况,在测试程序中调用另一个程序的activity, 代码片段如下: [java]  view plain copy btnStartX=(Button)findViewB ...

  7. centos7 docker 启动报错 Job for docker.service failed 解决办法

    启动  docker 报错 查看docker 版本,只有client,没有server. 解决方法:执行 vi /etc/sysconfig/selinux , 把 selinux 属性值改为disa ...

  8. mysql安装服务 deied_Mysql安装错误:Install/Remove of the Service Denied!解决办法

    [基于WPF+OneNote+Oracle的中文图片识别系统阶段总结]之篇三:批量处理后的txt文件入库处理 篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/ba ...

  9. DDoS(Distributed Denial of Service,分布式拒绝服务)

    DDoS:Distributed Denial of Service,即分布式拒绝服务攻击. 借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高 ...

最新文章

  1. 数据分析惯用的5种思维方法
  2. 更新oracle数据库表如何实现主键自增长
  3. pb分组数据累计_A轮公司数据分析面试经验
  4. mxnet slice_axis
  5. pku3020 Antenna Placement (解法1)
  6. 2108年计算机二级考试时间,计算机二级office考前10天复习应该做哪些安排逢考必过...
  7. [css] 说说position的absolute和fixed共同与不同点分别是什么?
  8. GDPR到底是如何影响机器学习的?
  9. matlab计算频域动态性能指标,基于MATLAB自动控制系统时域频域分析与仿真.doc
  10. java getipaddress_教你java用getAddress方法取得IP地址
  11. 20-10-023-安装-KyLin-2.5.2-单机版安装(MAC)成功
  12. 白中英 计算机组成原理_白中英《计算机组成原理》(第5版)笔记和课后习题答案详解...
  13. 构建大型网站架构服务器集群(转)
  14. RiceQuant开源项目Rqalpha运行演示策略的错误“ERROR 'figure' is an unknown keyword argument”...
  15. 24点游戏 java实现,一个基于Java技术编写的24点游戏逼真图形版,调用了很多图片去显示游戏内容JAVA游戏源码下载...
  16. android 强制关闭键盘,Android关闭输入软键盘无效的问题
  17. 数据结构及算法之异或
  18. 如何提高自己的编码水平
  19. PROTOTEX: Explaining Model Decisions with Prototype Tensors论文解读
  20. python2爬取虎扑NBA的新闻标题和内容发送到QQ邮箱

热门文章

  1. CentOS6.8 安装/升级Python2.7.x,并安装最新setuptools、pip、fabric程序总结
  2. 多态基类与虚析构函数
  3. C#实现MVC模式简要方法(2)
  4. 你必须会的DFS的递归实现与堆栈实现
  5. 购买阿里云服务器地域如何选择?
  6. TiDB Ecosystem Tools 原理解读系列(二)TiDB-Lightning Toolset 介绍
  7. lnmp的搭建及php加速
  8. 嵌入式linux------ffmpeg移植 解码H264(am335x解码H264到yuv420并通过SDL显示)
  9. 人生百味,浓缩到最后就是一个淡字
  10. 老李分享:shell 监控cpu,memory,load average 1