Fail2ban, полезная утилита, которая помогает защитить свой сервер от взлома. Суть работы в том, что она собирает логи доступа с различных служб сервера и при неудачных попытках подключения блокирует IP-адрес злоумышленника.
На CentOS7 устанавливается при помощи пакетного менеджера `yum install fail2ban` из репозитория `epel-release` (`yum install epel-release` - если еще не установлен).
Далее нужно создать файл конфигурации по пути `/etc/fail2ban/jail.local`. Мой стандартный пример для защиты ssh:
В блоке DEFAULT, указываются основные настройки:
- ignoreip - список ip адресов которые не надо блокировать.
- bantime - время на которое блокируется IP-адрес в секундах
- banaction - с помощью чего блокировать доступ
- findtime - интервал времени за который отслеживаются неудачные попытки
- maxretry - сколько неудачных попыток подключения надо сделать, чтобы получить бан
В блоке sshd включаем защиту для ssh подключений.
Галле активируем сервис `systemctl enable fail2ban` и запустим его `systemctl start fail2ban`.
Для проверки можно использовать команду `fail2ban-client status sshd `