Skip to content

fail2ban: ein schönes Logfilemonitoring

fail2ban ist ein Programm zum Monitoren von Logfiles - hauptsächlich um Einbruchsversuche zu verhindern; sprich wenn jemand versucht sowas wie Paßwortraten zu machen.
Ich habe das ganze modifiziert, so dass es a) mit Solaris 10 und b) mit Apache-Logfiles funktioiniert - und zwar so dass normale Leute nicht gestört werden, wenn aber jemand Webseiten "abrippen" will wird er geblockt.
Einiges ist mir dabei aufgefallen:

Ein "normales" Logfile-Rotieren im Sinne von "guck nach dem Datum" geht bisher nicht; der ConfigParser von Python sieht so etwas wohl nicht vor. Aber ein Reload sollte an der Stelle reichen; fail2ban schaiut dann nach welche Logfiles neu sind (wenn man mit Wildcards arbeitet) und liest diese dann ein.

Ausserdem scheint es alle Logfiles von Anfang bis Ende erstmal durchzuarbeiten. Das hat mich gewundert, weil der Prozess erstmal eine CPU ganz für sihc beanspruchte, aber nichts passierte. Erst als er quasi an die aktuellen Logfiles kam (9 Uhr und später) kam plötzlich Bewegung - er hat fliessig IPs gebannt. Ich muss mal schauen ob das gerechtfertigt ist, aber offensichtlich startet er beim Zählen beim Starten von fail2ban und nicht dann, wenn es im Logfile eingetragen ist. Das muss ich im Zweifelsfall nachfragen und eventuell ändern. Noch weiss ich nicht warum ich einen Exit-Code von 100 bekomme wenn er bannt, aber auch das bekomme ich noch raus...

Ansonsten sieht fail2ban in der 0.7er-Version zumindest für mich gut aus. Ein XML-File für die Solaris-10-SMF habe ich schon gebaut und werde ich wohl nächstens auch dem Projekt zur Verfügung stellen.

Trackbacks

No Trackbacks

Comments

Display comments as Linear | Threaded

No comments

Add Comment

E-Mail addresses will not be displayed and will only be used for E-Mail notifications.
To leave a comment you must approve it via e-mail, which will be sent to your address after submission.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
Standard emoticons like :-) and ;-) are converted to images.
Form options