!!!! Из-за неправильного отображения данных конфигов в WordPress выложил их здесь.
Устанавливаем fail2ban
deathstar# cd /usr/ports/secuity/py-fail2ban && make install clean
Правим конфиг
deathstar# ee /usr/local/etc/fail2ban/jail.conf
У меня он выглядит так
[DEFAULT]
# Какие IP игнорировать
ignoreip = 127.0.0.1
# Время бана в секундах
bantime = 600
# время проверки,за которое событие успеет повторится, чтоб отловить и забанить
findtime = 600
# кол-во неверных попыток
maxretry = 1
backend = auto

[ssh-ipfw]
enabled = true
# использовать фильтр из примеров
filter = bsd-sshd
# использовать /action.d/bsd-ipfw.conf
action = ssh-ipfw[localhost=78.24.219.97]
# Уведомление в Jabber :))
jabber-whois[name="SSH,IPFW", dest=deathstar@deathstar.name]
# Какой лог парсить
logpath = /var/log/auth.log
# Какой Ip игнорировать
ignoreip = 127.0.0.1

[exim-ipfw]
enabled = true
filter = exim
action = exim-ipfw[localhost=78.24.219.97]
jabber-whois[name="Exim,IPFW", dest=deathstar@deathstar.name]
logpath = /var/log/exim/mainlog
ignoreip = 127.0.0.1

[nginx-ipfw]
enabled = true
filter = nginx
action = nginx-ipfw[localhost=127.0.0.1]
jabber-whois[name="Nginx,IPFW", dest=deathstar@deathstar.name]
logpath = /home/deathstar/www/deathstar.name.access.log
ignoreip = 127.0.0.1

Для уведомления в Jabber должен быть установлен и настроен sendxmpp ( о нем я писал в предыдущих статьях)
Создаем файл /usr/local/etc/fail2ban/action.d/jabber-whois.conf с таким содержимым

[Definition]
actionstart = printf %%b "[Fail2Ban] : started
The jail
has been started successfully.\n
" | /usr/local/bin/sendxmpp ""

actionstop = printf %%b "[Fail2Ban] : stopped
The jail
has been stopped.\n
" | /usr/local/bin/sendxmpp ""

actioncheck =

actionban = printf %%b "[Fail2Ban] : banned
The IP
has just been banned by Fail2Ban after
(далее…)