海运的博客

Apache/Httpd防DDOS/CC模块mod_evasive安装

发布时间:October 23, 2012 // 分类:Apache // No Comments

Apache模块mod_evasive利用Hash表储存相应的HTTP请求,利用设定规则判断是否拒绝对方的请求。
安装:

#https://www.haiyun.me
wget http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
tar zxvf mod_evasive_1.10.1.tar.gz 
cd mod_evasive/
apxs -i -a -c mod_evasive20.c
#编译、安装、并加载模块

配置mod_evasive:

<IfModule mod_evasive20.c>
    DOSHashTableSize    3097 #表大小
    DOSPageCount        2 #限制单位时间内同一IP请求同一网页次数
    DOSSiteCount        10 #限制单位时间内同一IP请求网站次数
    DOSPageInterval     1 #网页存取间隔
    DOSSiteInterval     1 #网站存取间隔
    DOSBlockingPeriod   10 #限制访问时间
    DOSEmailNotify     #疑似攻击时邮件通知
    DOSSystemCommand "su - onovps -c iptables -I INPUT -s %s --dport 80 -j DROP" 
    #疑似攻击时用防火墙限制IP访问80端口
    DOSLogDir  "/var/log/    #日志目录
    DOSWhiteList 127.0.0.1 #添加白名单
</IfModule>

重启Apache生效:

/etc/init.d/httpd restart

同时作者还提供了一个测试程序用以测试mod_evasive是否生效:

perl test.pl 
HTTP/1.1 200 OK
HTTP/1.1 403 Forbidden
分类
最新文章
最近回复
  • : linux系统上单个网卡多条宽带拨号获取公网IP,外网可以访问这些IP,有偿! Q:25299...
  • 硅谷少年: 非常有用,感谢分享
  • spartan2: https://dashboard.hcaptcha.com/welcome_accessib...
  • 海运: 应该能,在购买页面先手工跳过cf机器验证,后续一定时间内不更换ip应该不会再次验证。
  • spartan: 大佬斯巴达开启了CF的机器识别验证,请问插件能自动跳过吗? 另外这个脚本有没有简单使用说明,新...
  • vincent: 膜拜大佬
  • 海运: proxy-header或proxy_protocol
  • liangjw: 如果是 内部调用 或者 中间存在 代理 而上一个代理又在内网 ,那怎么处理来自代理私有IP?
  • chainofhonor: 感谢,用dnsmasq设置自动判断BIOS和UEFI成功了
  • 海运: 不好意思,这个是很多年前的,现在也许已经不适用,我现在也不用多线了。