How to protect Apache against DOS,DDOS or brute force attacks
Posted by Admin on May 12th, 2009
If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!
Detection is performed by creating an internal dynamic hash table of IP Addresses and URIs, and denying any single IP address from any of the following:
* Requesting the same page more than a few times per second
* Making more than 50 concurrent requests on the same child per second
* Making any requests while temporarily blacklisted (on a blocking list)
This method has worked well in both single-server script attacks as well as distributed attacks, but just like other evasive tools, is only as useful to the point of bandwidth and processor consumption (e.g. the amount of bandwidth and processor required to receive/process/respond to invalid requests), which is why it's a good idea to integrate this with your firewalls and routers for maximum protection.
This module instantiates for each listener individually, and therefore has a built-in cleanup mechanism and scaling capabilities. Because of this per-child design, legitimate requests are never compromised (even from proxies and NAT addresses) but only scripted attacks. Even a user repeatedly clicking on 'reload' should not be affected unless they do it maliciously. mod_evasive is fully tweakable through the Apache configuration file, easy to incorporate into yourweb server, and easy to use.
Install mod_evasive in Debian
#apt-get install libapache2-mod-evasive
This will complete the installation
Test mod_evasive Module
open any browser,open your apache server home page, and click the reload button as fast as you can.