20 ways to Secure your Apache Configuration
This is a pretty good basic/intermediate Howto written by Pete Freitag, who is a software engineer, and web developer from central New York. The article is slightly outdated (after all, it was written in 2005), yet extremely useful for those who want to run their own Apache web server. Click here for the location of the tutorial.
The only thing that I would like to add, is that even seasoned sysadmins sometimes forget to implement basic stuff described in this tutorial. Go figure!
I bet, you have to block more and more ip addresses to your iptables on daily basis. How about blocking the whole country? I don’t know how these guys from LinuxAdmin.org did it, but it is a reality. You can use this simple application to automatically generate huge list of ipaddresses of a certain country (there are 14 countries, currently, I believe) ready to be included in your iptables. You can block selectively certain ports of your choice : smtp 25(tcp), ssh 22(tcp), ftp 20,21(tcp),http 80(tcp),dns 53(udp),53(tcp) and so on.