当前位置 主页 > 服务器问题 > Linux/apache问题 >

    Apache防DDOS模块mod(2)

    栏目:Linux/apache问题 时间:2018-11-24 13:39

    代码如下:[root@localhost ~]/usr/sbin/ab -n 1000 -c 50 http://www.baidu.com:80/
    注:上面的例子的意思是,如果您的服务器是百度的WEB服务器,我们要发送数据请求包,总共1000个,每次并发50个;
    另外一个测试工具就是mod_evasive的解压包的目录中,有个test.pl ,你可以修改IP地址,然后用
    复制代码 代码如下:[root@localhost ~]perl test.pl
    HTTP/1.1 200 OK
    HTTP/1.1 403 Forbidden
    是不是有效果,请根据 ab工具或 测试脚本出来的结果来查看;
    注:因为我们编译mod_evasive时,用的是默认配置,所以日志被存放在/tmp目录中。如果有DDOS攻击,会在/tmp产生日志。日志的文件是以 dos-开头的;
    六、配置参数详解
    DOSHashTableSize 3097:定义哈希表大小。  
    DOSSiteCount 50:允许客户机的最大并发连接。  
    DOSPageCount 2:允许客户机访问同一页的间隔。  
    DOSPageInterval 1:网页访问计数器间隔。  
    DOSSiteInterval 1:全站访问计数器间隔。  
    DOSSiteInterval 60:加入黑名单后拒绝访问时间。  
    DOSEmailNotify xxxx@gmail.com:有IP加入黑名单后通知管理员。  
    DOSSystemCommand "sudo iptables -A INPUT -s %s -j DROP":IP加入黑名单后执行的系统命令。  
    DOSLogDir "/tmp":锁定机制临时目录,日志目录。  
    DOSWhiteList 127.0.0.1:防范白名单,不阻止白名单IP。
    七、mod_evasive 的高级配置
    如果想更改一些适合自己的参数,有些必要的参数,并不是通过配置文件修改就一下起作用的,我们要修改源码包中的 mod_evasive.c(Apache 1.x用之) 或 mod_evasive20.c (Apache 2.x用之);
    复制代码 代码如下:#define DEFAULT_HASH_TBL_SIZE   3097ul  // Default hash table size
    #define DEFAULT_PAGE_COUNT      2       // Default maximum page hit count per interval
    #define DEFAULT_SITE_COUNT      50      // Default maximum site hit count per interval
    #define DEFAULT_PAGE_INTERVAL   1       // Default 1 Second page interval
    #define DEFAULT_SITE_INTERVAL   1       // Default 1 Second site interval
    #define DEFAULT_BLOCKING_PERIOD 10      // Default for Detected IPs; blocked for 10 seconds
    #define DEFAULT_LOG_DIR         "/tmp"  // Default temp directory
    比如我们改改其中的数字,根据英文很容易理解。比如修改日志存放目录,就把/tmp改成别的目录。如果您不知道放在哪好,还是用默认的吧;
    如果您在这里更改了参数,不要忘记修改Apache 配置文件中关于mod_evasive 的参数;
    如果您想加入一些其它的参数,请查阅源码包中的README,里面有详细说明,大多来说没太大的必要……
    这个文件相当重要,如果您想更改某些设置,就要修改这个文件……

    八、总结
    mod_evasive 还是有点用的,对于apache服务器来说,是目前比较好的一个防护DDOS攻击的扩展模块。虽然并不能完全防御 DDOS攻击,但在一定条件下,还是起到缓服Apache(httpd)服务器的压力。如果配合iptables、硬件防火墙等防火墙设备配合使用,可能有更好的效果。安装也不费力气。如果你需要的时候,会想到这个模块的。