使用apache服务的功能模块使web服务免受应用层DOS攻击

一般来说,有两种形式的 DOS 攻击:

  1. OSI 模型的三、四层,即网络层攻击
  2. OSI 模型的七层,即应用层攻击

第一种类型的 DOS 攻击——网络层,发生于当大量的垃圾流量流向网页服务器时。当垃圾流量超过网络的处理能力时,网站就会宕机。

第二种类型的 DOS 攻击是在应用层,是利用合法的服务请求,而不是垃圾流量。当页面请求数量超过网页服务器能承受的容量时,即使是合法访问者也将无法使用该网站。

在没有硬件防御的情况下,使用apache的模块 mod_evasive ,可以缓解来自应用层的攻击。

下载mod_eva :https://github.com/jzdziarski/mod_evasive

编译到apache中:/usr/local/apache24/bin/apxs -i -a -c mod_evasive20.c

此时,模块被安装到了apache目录下的modules下。

编辑httpd.conf,增加如下内容:

<IfModule mod_evasive20.c>
#定义哈希表的大小,
   DOSHashTableSize 3097 
#间隔对同一页面(或URI)的请求数量的阈值。一旦超过该间隔的阈值,客户端的IP地址将被添加到黑名单(也就是每个页面的请求次数,当然这个请求次数是有定义的,由DOSPageInterval定义)
   DOSPageCount 2 
#间隔时间内对网站内任意页面的请求数,超过次数,则客户端被拉入黑名单,时间间隔由(DOSSiteInterval定义)
   DOSSiteCount 50 
#网页访问计数的间隔
   DOSPageInterval 1
#网站访问计数的间隔
   DOSSiteInterval 1
#放入黑名单中的时长
   DOSBlockingPeriod 10 
</ IfModule> 

还有一些别的配置,可以参考此模块作者的github上的说明(地址见上方下载链接),这里简单说一下:
DOSEmailNotify   只要触发黑名单,则邮件通知对应的人员
DOSSystemCommand  只要触发黑名单,执行的系统指令
DOSLogDir         日志记录位置,需要此文件夹与apache相同的属组和属主
DOSWhitelist 127.0.0.1  白名单中的地址

安装完成后可以使用ab或者别的工具进行测试,这里就不再做介绍了 。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值