0.原理
mod_evasive是apache防范DDOS攻击的模块,其原理大致如下:
有新访问到达时:
查看黑名单中是否有该客户IP。
将IP和请求URL一起HASH;查找HASH表看过去1秒是否连续请求同一页。
将IP和请求URL一起HASH;查找HASH表看过去1秒是否请求超过50个连接。
满足任意一条就返回403并阻止该IP一定时间,该时间由DOSSiteInterval决定。
1.安装mod_evasive
sudo apt-get install libapache2-mod-e
libapache2-mod-encoding libapache2-mod-evasive
sudo apt-get install libapache2-mod-evasive
2.配置mod_evasive
sudo vi /etc/apache/conf.d/mod_evasive
#添加以下:
DOSHashTableSize 3097:定义哈希表大小。
DOSSiteCount 50:允许客户机的最大并发连接。
DOSPageCount 2:允许客户机访问同一页的间隔。
DOSPageInterval 1:网页访问计数器间隔。
DOSSiteInterval 1:全站访问计数器间隔。
DOSSiteInterval 60:加入黑名单后拒绝访问时间。
DOSEmailNotify :有IP加入黑名单后通知管理员。
DOSSystemCommand "sudo iptables -A INPUT -s %s -j DROP":IP加入黑名单后执行的系统命令。
DOSLogDir "/tmp":锁定机制临时目录。
DOSWhiteList 127.0.0.1:防范白名单,不阻止白名单IP。
阅读(1399) | 评论(0) | 转发(0) |