При установке fail2ban на Ubuntu 14.04, блокирование ssh должно работать по умолчанию, но недавно заметил что это не так. Давайте исправим это.
Установка Fail2ban
sudo apt-get install fail2ban
Немного изменив файл /etc/fail2ban/jail.conf ужесточаем правила
[ssh] enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 4 bantime = 6000
Как и писал выше, ssh в fail2ban не работает в Ubuntu 14.04 по умолчанию, а все из-за того что fail2ban ищет в /var/log/auth.log дату в формате YYYY.MM.DD а на самом деле Jan 18.
Исправляем:
cp /etc/fail2ban/filter.d/common.conf /etc/fail2ban/filter.d/common.local
Заменить в /etc/fail2ban/filter.d/common.local на:
__bsd_syslog_verbose = (<[^.]+ [^.]+>)
Перегружаем:
/etc/init.d/fail2ban restart
В логах /var/log/fail2ban.log
2016-01-18 12:01:29,507 fail2ban.actions: WARNING [ssh] Ban 162.243.104.16 2016-01-18 12:01:29,513 fail2ban.actions: WARNING [ssh] Ban 192.255.41.92