#Module-Specific definitions %define mod_version 1.10 %define mod_name mod_dosevasive %define mod_conf A11_%{mod_name}.conf %define mod_so %{mod_name}.so %define sourcename %{mod_name}-%{mod_version} %define apache_version 2.0.53 # Standard Module Definitions %define name apache2-%{mod_name} %define version %{apache_version}_%{mod_version} Summary: DoS Evasive Maneuvers Module for the apache2 Web server Name: %{name} Version: %{version} Release: %mkrel 4 Group: System/Servers License: Apache License URL: http://www.nuclearelephant.com/projects/dosevasive/ Source0: http://www.nuclearelephant.com/projects/dosevasive/%{mod_name}_%{mod_version}.tar.bz2 Source1: %{mod_conf}.bz2 Patch0: mod_dosevasive-small_fix.patch.bz2 Requires: mailx Prereq: apache2 >= %{apache_version} Prereq: apache2-conf BuildRequires: apache2-devel >= %{apache_version}-1mdk BuildRequires: file BuildRoot: %{_tmppath}/%{name}-buildroot %description A module for apache2 giving Apache the ability to fend off request-based DoS attacks conserving your system resources and bandwidth. This new tool maintains an internal table of IP addresses and URLs and will deny repeated requests for the same URL from the same IP address, blacklisting the address for 10-seconds per extraneous request. Obviously, this module will not fend off attacks consuming all available bandwidth or more resources than are available to send 403's, but is very successful in typical flood attacks or cgi flood attacks. %prep %setup -q -n mod_dosevasive %patch0 -p0 rm -rf .libs rm -f %{mod_name}.c mv %{mod_name}20.c %{mod_name}.c # strip away annoying ^M find . -type f|xargs file|grep 'CRLF'|cut -d: -f1|xargs perl -p -i -e 's/\r//' find . -type f|xargs file|grep 'text'|cut -d: -f1|xargs perl -p -i -e 's/\r//' %build %{_sbindir}/apxs2 -c %{mod_name}.c %install [ "%{buildroot}" != "/" ] && rm -rf %{buildroot} install -d %{buildroot}%{_libdir}/apache2-extramodules install -d %{buildroot}%{_sysconfdir}/httpd/conf.d install -m0755 .libs/*.so %{buildroot}%{_libdir}/apache2-extramodules/ bzcat %{SOURCE1} > %{buildroot}%{_sysconfdir}/httpd/conf.d/%{mod_conf} install -d %{buildroot}%{_var}/www/html/addon-modules ln -s ../../../..%{_docdir}/%{name}-%{version} %{buildroot}%{_var}/www/html/addon-modules/%{name}-%{version} %post if [ -f %{_var}/lock/subsys/httpd ]; then %{_initrddir}/httpd restart 1>&2; fi %postun if [ "$1" = "0" ]; then if [ -f %{_var}/lock/subsys/httpd ]; then %{_initrddir}/httpd restart 1>&2 fi fi %clean [ "%{buildroot}" != "/" ] && rm -rf %{buildroot} %files %defattr(-,root,root) %doc README %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/httpd/conf.d/%{mod_conf} %attr(0755,root,root) %{_libdir}/apache2-extramodules/%{mod_so} %{_var}/www/html/addon-modules/* %changelog * Sun Mar 20 2005 Oden Eriksson <oeriksson@mandrakesoft.com> 2.0.53_1.10-4mdk - use the %%mkrel macro * Mon Feb 28 2005 Oden Eriksson <oeriksson@mandrakesoft.com> 2.0.53_1.10-3mdk - fix %%post and %%postun to prevent double restarts - fix bug #6574 * Wed Feb 16 2005 Oden Eriksson <oeriksson@mandrakesoft.com> 2.0.53_1.10-2mdk - spec file cleanups, remove the ADVX-build stuff * Tue Feb 8 2005 Oden Eriksson <oeriksson@mandrakesoft.com> 2.0.53_1.10-1mdk - rebuilt for apache 2.0.53 * Tue Sep 28 2004 Oden Eriksson <oeriksson@mandrakesoft.com> 2.0.52_1.10-1mdk - 1.10 - updated S1 * Tue Sep 28 2004 Oden Eriksson <oeriksson@mandrakesoft.com> 2.0.52_1.9-1mdk - built for apache 2.0.52 * Thu Sep 16 2004 Oden Eriksson <oeriksson@mandrakesoft.com> 2.0.51_1.9-1mdk - built for apache 2.0.51 * Mon Jul 12 2004 Oden Eriksson <oeriksson@mandrakesoft.com> 2.0.50_1.9-1mdk - built for apache 2.0.50 - remove redundant provides * Mon Jun 14 2004 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.0.49_1.9-1mdk - built for apache 2.0.49 * Wed Nov 05 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.0.48_1.9-1mdk - built for apache 2.0.48 * Sun Nov 02 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.0.47_1.9-1mdk - 1.9 * Wed Sep 03 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.0.45_1.8-1mdk - 1.8 - updated S1 * Tue Aug 26 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.0.45_1.7.1-1mdk - 1.7.1 * Sat Aug 23 2003 Oden Eriksson <oden.eriksson@kvikkjokk.net> 2.0.45_1.7-1mdk - initial cooker contrib