Debian Etch apache2 mit Mod_Security 2.5.5 richtig installiert

Hier mal ein kleines Howto für Debian Etch Apache2 mit mod_security2

Ich setze voraus dass Ihr apache2-mpm-worker mit apache2-threaded-dev oder
apache2-mpm-prefork apache2-prefork-dev installiert habt

Wenn nicht dann mal

apt-get install apache2-mpm-worker apache2-threaded-dev

oder

apt-get install apache2-mpm-prefork apache2-prefork-dev

ausführen, je nachdem welchen Apache Ihr installiert habt.
Des weiteren setzt mod_security2 voraus das libxml2 und libxml2-dev installiert ist, wenn nicht dann

apt-get install libxml2 libxml2-dev

ausführen.

Apache server stoppen

/etc/init.d/apache2 stop

jetzt mod_security source downloaden und entpacken

cd /root
wget https://bsn.breach.com/downloads/t=09bb5ba64be915c34a31f14e6e2eb4cd/modsecurity-apache/modsecurity-apache_2.5.5.tar.gz
tar xzvf modsecurity-apache_2.5.5.tar.gz
cd /root/modsecurity-apache_2.5.5/apache2

jetzt configurieren compillieren und wenn keine Fehler installieren

./configure --with-apxs=/usr/bin/apxs
make
make install

Dann in /etc/apache2/mods-available neue Datei 'security2.load' mit folgendem Inhalt anlegen

touch /etc/apache2/mods-available/security2.load
echo 'LoadFile /usr/lib/libxml2.so' > /etc/apache2/mods-available/security2.load
echo 'LoadModule security2_module /usr/lib/apache2/modules/mod_security2.so' >> /etc/apache2/mods-available/security2.load

in /etc/apache2 das Verzeichnis mods-security anlegen

mkdir /etc/apache2/mods-security

in der Datei /etc/apache2/apache2.conf den Eintrag 'Include /etc/apache2/mods-security/' am Ende der Datei eintragen

echo 'Include /etc/apache2/mods-security/' >> /etc/apache2/apache2.conf

Nun aktivieren wir das neue Apache Modul und starten den Apache mit

a2enmod security2
/etc/init.d/apache2 start

Wenn nun keine Fehler erscheinen und der Apache gestartet ist,
ist das neue Modul erfolgreich installiert und aktiviert.
Aber mod_security übernimmt zu diesem Zeitpunkt noch keine kontrolle
denn es fehlen janoch die Konfigurationsdateien mit den entsprechenden regeln.

Diese gillt es jetzt nach und nach zu integrieren,
das erste Beispiel gebe ich jetzt ab, den rest macht Ihr dann selber.

Wir schmeissen jetzt die wichtigste Datei modsecurity_crs_10_config.conf
ins zuvor angelegte Verzeichnis /etc/apache2/mods-security .
Dazu folgendes ausführen:

cd /root/modsecurity-apache_2.5.5/rules
mv modsecurity_crs_10_config.conf /etc/apache2/mods-security/modsecurity_crs_10_config.conf

Jetzt öffnen wir die Datei mit nano

nano /etc/apache2/mods-security/modsecurity_crs_10_config.conf

ändern die Zeile 191 = 'SecAuditLog logs/modsec_audit.log' um in

SecAuditLog /var/log/apache2/modsec_audit.log

die Zeile 285 = 'SecDebugLog logs/modsec_debug.log' um in

SecDebugLog /var/log/apache2/modsec_debug.log

speichern die Datei und startne de Apache neu:

/etc/init.d/apache2 start

Wenn jetzt keine Fehler aufgetreten sind ist all super.
So importiert ihr die Regeln nach euren belangen weiter. Immer darauf achten was in den Logs von Mod_Security steht,
die ja ins gleiche Verzeichnis wie die Apache logs geschrieben werden , in denen könnt Ihr unter anderem erkennen ob
euer Web richtig läuft (den Mod_security kann unerwünschte funtionen auslösen) und ob es jemand auf es abgesehen hat.

Source Quellen:
Apache HTTP Server Porject Modsecurity Open Source Webapplication Firewall

2 Kommentar(e)

Zum Posten von Kommentaren bitte

Kommentare

Von: griesgram

Hy,

gutes Howto, jedoch ist die Version die du Verwendest mittlerweile alt! Für die, die ein aktuelles Howto suchen: Howto Apache2 mit mod-evasive(1.10.1) und mod-security(2.5.7)

viel spass mit Mod-Security, es arbeitet wirklich gut, teilweise fast zu gut ;) Einfach aufpassen das man sich nicht selber aus den Webapplikationen sperrt!


Von: benjaminbih

@griesgramm danke für dein Kommentar, HowTo ist ja auch vom Juli letzten Jahres......
Gruß