Ребята, я запускаю CentOS5.6 (последняя версия) и только что установил версию FAIL2BAN (0.8.4-23.el5).
Я настроил его, чтобы запретить атаки SSH и VSFTPD.
Как видите здесь: http://pastebin.com/RLyzGgBe fail2ban запустился правильно, проверил 2 файла журнала. Я проверил пути, оба верны.
Теперь fail2ban уже заблокировал несколько злоумышленников SSH, но, похоже, он не хочет блокировать злоумышленников VSFTPD.
Когда я проверяю журналы vsftpd в реальном времени, некоторые IP-адреса продолжают блокировать мой сервер неверными логинами примерно каждую секунду. Так что этих парней уже надо было забанить.
Я протестировал функцию vsftpd в fail2ban с помощью этой команды: fail2ban-regex /var/log/vsftpd.log /etc/fail2ban/filter.d/vsftpd.conf
Кажется, все работает нормально, результат теста: http://pastebin.com/gQsLjZhX
Я уже пробовал: use_localtime=YES
и dual_log_enable=YES
в vsftpd.conf
fail2ban.conf: http://pastebin.com/rQadAxXc
jail.conf: http://pastebin.com/u5ePLXMQ (часть vsftpd)
failregex = vsftpd(?:\(pam_unix\))?(?:\[\d+\])?:.* authentication failure; .* rhost=<HOST>(?:\s+user=\S*)?\s*$
\[.+\] FAIL LOGIN: Client "<HOST>"\s*$
Кто-нибудь знает, почему fail2ban не банит моих атакующих vsftpd?
Мне удалось заставить его работать, используя: / var / log / secure также для чтения журнала VSFTPD. Хотя обычные журналы VSFTPD также должны работать, поскольку они выводят аналогичные данные. Настоящая проблема здесь, должно быть, в failregex. Но с / var / log / secure работает.