DivHost - территория хостинга
новости карта сайта

главная страница услуги партнерам поддержка оплата информация контакты

fail2ban - надежная защита от подбора паролей для Joomla, WordPress, DataLife и других CMS

Где-то в период с 15-20 августа многие движки, в том числе самые известные - Joomla, DLE, WordPress, E107 и другие начали массово взламывать методом подбора паролей.

Многие 40% сайтов на известных движках в сети были взломаны. Да-да 40% это очень большая цифра, подбирали с помощью многотомных словарей и могли взломать даже трудные пароли, типа #RWF#@8j.

В связи с этим возникла потребность в надежной защите своих сайтов. Есть отличный инструмент, который анализирует логи по регулярным выражениям и если количество обращений больше чем в настройках то устанавливает BAN на определенное время. На самом деле скрипт очень простой, но очень полезный и используется многими хостингами.

Давайте подробнее рассмотрим что же такое Fail2Ban и как с его помощью можно защитить сервер от перебора паролей.

Для начала установим его:

# wget http://www.divhost.ru/files/fail2ban-0.8.10.tar.gz # скачиваем fail2ban с нашего сервера.
# tar xvfj fail2ban-
0.8.10.tar.bz2 #распаковываем
# cd fail2ban-
0.8.10 #переходим в директорию fail2ban-0.8.10
# python setup.py install #осуществляем установку с помощью Питона
# cd config #переходим в папку настроек
# cp debian-initd/etc /init.d/fail2ban #важный момент, перемещаем управляющий файл
# cd /etc/init.d # переходим в директорию init.d
# chmod +x fail2ban # устанавливаем права
# update-rc.d fail2ban defaults # записываем в автозагрузку
# cp fail2ban.conf.iptables /etc/fail2ban.conf # устаналиваем файл конфигурации


Теперь рассмотрим как защитить наш сервер с помощью этой утилиты.

В настройках fail2ban уже идут конфиги и регулярные выражения для защиты основных сервисов сервера, а именно: ssh, proftpd,vsftpd, mysqld и другие.

Теперь разберемся как нам создать своё правило и отслеживать скрипты к примеру:

[DEFAULT]
bantime = 3600 # время бана в секундах

[ssh-iptables]

enabled = true # если true то директива
ssh-iptables включена
filter = sshd # имя фильтра, должно соотвествовать filter.d
action = iptables[name=SSH, port=ssh, protocol=tcp] # name должно соотвествовать filter.d, port=ssh, protocol=tcp
sendmail-whois[name=SSH, dest=admin@company.org, sender=fail2ban@company.org] # dest - ваш email на который высылать письмо если фильтр сработает
logpath = /var/log/secure  # файл логов где отслеживается появление записей, которое соответствует регулярному выражению  в файле
filter.d/ss
maxretry = 3 # количество повторов, после которых включать блокировку.



Просмотр IP которые забанены:

fail2ban-client status ssh-iptables

Выгодно купить окна из дуба на сайте производителя.
главная     |     домены     |     хостинг     |     реселлинг     |     выделенный сервер     |     администрирование     |     поддержка    |     контакты
© 2006-2012 DivHost Services / Все права сохранены /