Türsteher für vsftp

Fail2Ban ist ein kleines Tool, welches Logdateien verschiedener Dienste im Hintergrund überwacht und basierend auf den Ereignissen verschiedene Aktionen auslöst. Häufig eingesetzt wird das Programm zum verhindern von Brute-Force Attacken. Fail2Ban kann in diesem Fall automatisch eine iptables Regel erstellen und nach einer definierten Zeit wieder entfernen.

Auch ich habe hier einen kleinen FTP Server laufen, welcher in letzter Zeit immer häufiger Opfer von Brute-Force Attacken. Bis jetzt sind die Kiddies noch sehr weit von einem gültigen Benutzernamen entfernt und dann fehlt ihnen auch noch das Passwort, aber man muss es ja nicht darauf ankommen lassen. Also hab ich heute Fail2Ban installiert. Die Unterstützung für vsftpd muss in der Datei /etc/fail2ban/jail.conf eingeschaltet werden.

[vsftpd]

enabled = true
port = ftp,ftp-data,ftps,ftps-data
filter = vsftpd
logpath = /var/log/vsftpd.log
maxretry = 3

Eventuell muss noch der Pfad zur Logdatei angepasst werden.

Die Logdatei meines FTP-Servers hat einen etwas anderen Aufbau als der von Fail2Ban erwartete. Fehlerhafte sehen dort so aus:

Sat Jun 7 22:57:00 2008 [pid 16568] [anonymous] FTP response: Client "77.187.64.154", "530 Permission denied."

Dadurch muss die Fail2Ban RegEx in der Datei /etc/fail2ban/filter.d/vsftpd.conf angepasst werden. Für die Zeile oben gilt:

failregex = .*Client."<HOST>",."530 Permission denied."$

Ob die Zeile funktioniert, kann man dann z.B. mit einem einfachen

fail2ban-regex /var/log/vsftpd.log /etc/fail2ban/filter.d/vsftpd.conf

testen.

Tags: , ,

This entry was posted on Samstag, Juni 7th, 2008 at 23:59 and is filed under Betriebssysteme, Linux. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Leave a Reply