Защита от брутфорса паролей при помощи Fail2Ban

В какой-то момент меня задолбало листать длиннющий logwatch с тысячами сообщений о том что на сервер пытались зайти с неверным логином по SSH и я решил оторвать свою пятую точку и поискать как же можно избавиться от ненависных брутфорсеров, и нашел…
Fail2Ban – утилита позволяющая защитить сервер от брутфорса таких сервисов как SSH, FTP, Apache и т.д. Она производит анализ логов программ и в случае превышения лимита на неудачные логины банит IP адрес злоумышленника при помощи iptables, при «бане» администратору высылается оповещение.
Официальный сайт: http://www.fail2ban.org/
Предполагается что вы используете CentOS
Для простоты работы и настройки лучше всего использовать версию Fail2Ban >0.8 (в стандартном репозитории есть только 0.6), для этого у вас должен быть установлен репозиторий RPMForge.
Для установки выполняем команду:
yum install fail2ban.noarch
После этого меняем настройки Fail2Ban (почему-то в конфигах указан неправильный путь к логу SSH):
Меняем файл /etc/fail2ban/jail.conf
... bantime = 600 ... [ssh-iptables] enabled = true filter = sshd action = iptables[name=SSH, port=ssh, protocol=tcp] sendmail-whois[name=SSH, dest=root, sender=fail2ban] logpath = /var/log/secure maxretry = 5 ... |
Обратите внимание на параметры:
bantime – время (в секундах), накоторое забаниться злоумышленник (по умолчанию 600 – 10 мин)
logpath – по умолчанию он указан неправильно
dest – кому слать оповещения о «забаненных»
sender – «отправитель» письма
maxretry – количество повторных «ошибочных» попыток логина
После настройки можно запускать сервис:
service fail2ban start chkconfig fail2ban on |
При условии что вы не поленились поменять алиас у пользователя root, со временем (зависит от «популярности» вашего сервера) вы начнете получать письма о том что хост такой-то забанен, а количество сообщений о неверных логинах уменьшиться до 10-20 в день, вместо 2-3 тысяч как это было у меня.
Hmm. a pochemu ne denyhost ?
http://denyhosts.sourceforge.net/
Правильно ли я понял, что DenyHost работает только с SSH ?
Да ДэниХост – только для sshd.
И как написано в About – имеет элегантность Питона
Хм…могу только сказать что Fail2Ban работает и с FTP и Apache и еще не пойми с чем…и имеет элегантность Perl`а
?? Почему на меня нападают евангелисты Python`a ??
для защиты от брутфорса проще и удобнее настроить фаервол посмотри сдесь
http://linux-online-ru.blogspot.com/2010/06/bruteforce-iptables.html
Да ну зачем такие сложности, уносил sshd на любой удобный порт, отличный от 22 и забываем о тупо брутфорсящих ботах.
Ты сильно ошибаешся! Так как например у меня не стандартный порт но боты подберают на простой хост по 10 банит в день.
– offtop on
Привет. Комент не по теме топика. Пишу сюда т.к. не нашел контактов в блоге.
В теме «Легально ли смотреть видео с Youtube через JW Player»,
да легально. Могу предложить альтернативу JW Player, для проигрывания видео с ютуб.
Напиши на почту указаннную в поле «Mail (will not be published)», пообщаемся.
– offtop off
Дело в том что YuoTube в принципе запрещает проигрывать видео не через свой плеер.
Но за предложение спасибо.