====== Apache Mod Security ====== Es gibt für den Apache ein Module mit dem Namen mod_security. Mit diesem Module lässt sich eine Layer 7 Firewall (Application-Firewall) für den Apache bauen. (getestet auf dem Server "kirby" unter Ubuntu-Server 11.10) **1.) Installieren** apt-get install libapache2-modsecurity a2enmod mod-security ---- **2.) Regelwerk laden** Das Regelwerk kann man sich von dieser Webseite laden [[https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project]] Oder direkt bei [[http://sourceforge.net/projects/mod-security/files/modsecurity-crs/0-CURRENT/]] ---- **3.) Regelwerk installieren** Wir haben uns das aktuelle Regelwerk unter /tmp gespeichert und installieren jetzt die wichtigesten Regeln cd /tmp tar -xvzf modsecurity-crs_2.2.3.tar.gz cd modsecurity-crs_2.2.3 mkdir -p /etc/modsecurity/activ/ cp modsecurity_crs_10_config.conf.example /etc/modsecurity/activ/modsecurity_crs_10_config.conf for f in `ls base_rules/` ; do cp base_rules/$f /etc/modsecurity/activ/$f ; done for f in `ls optional_rules/ | grep comment_spam` ; do cp optional_rules/$f /etc/modsecurity/activ/$f ; done ---- **4.) Config von Mod-Security anpassen** vim /etc/apache2/mods-enabled/mod-security.conf Include "/etc/modsecurity/activ/*.conf" ---- **5.) Testen** Wenn man jetzt in der modsecurity_crs_10_config Setzt und den Apache neu startet werden alle Treffer der Firewall im error.log aufgezeichnet jedoch noch nicht geblockt. So kann man seine Funktionalität seiner Webseite testen bevor man die Firewall scharf schaltet. Zum Testen eignet sich sehr gut Nikto2 [[http://www.cirt.net/nikto2]] cd /tmp wget https://cirt.net/nikto/nikto-2.1.4.tar.gz tar -xvzf nikto-2.1.4.tar.gz cd nikto-2.1.4 perl nikto.pl -h www.meinedomain.at Wenn man sich dieses Tool nicht saugen möchte kann man dies auch einfacher machen in dem man sich eine URL zusammen baut http://www.meinedomain.at/index.php?SELECT%20*%20FROM%20mysql.users ---- **6.) Scharf schalten** Wenn man sich sicher ist das man seine Firewall scharf schalten will geht das ganz einfach mit vim /etc/modsecurity/activ/modsecurity_crs_10_config.conf SecRuleEngine On /etc/init.d/apache2 restart Und schon ist die Apache-Firewall aktiv..