httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ben Macintosh" <bmac.l...@gmail.com>
Subject [users@httpd] How to prevent from simple DoS?
Date Sun, 18 Nov 2007 15:28:36 GMT
Hi
I'm currently facing a problem which I can't find any help for.
Every once in a while, my webserver doesn't respond to requests
anymore, i.e. the browser simply keeps on loading but doesn't get any
data.

Using the status mod I found that in such a situation every possible
"slot" is being used by requests staying in "..reading.." status.
After restarting apache all the pending requests get processed but
after a few seconds all the slots are being blocked by the
"..reading.." status again.

After some tests I could reproduce the situation with simply
initiating multiple telnet session to the webserver without sending
any data. Every such request blocks a slot for the default timeout of
300 seconds.

Is this common behaviour? If so, how to prevent it?
As I understand the issue it's a very simple DoS as it neither does
require a lot of cpu nor bandwidth on the client side.

The only solutions I can see is lowering the timeout and increasing
MaxClients. Although a higher MaxClients probably won't help much,
because it's easy to start hundreds of sessions.
Regarding timeout - can I lower this drastically to about 5 secs
without creating new problems?

I'm using Apache 2.0.54 from Debian Sarge.
Here's a screenshot of the status page:
http://img520.imageshack.us/my.php?image=statushi3.png

Any help appreciated

Thanks, Ben

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Mime
View raw message