Как установить Fail2Ban для защиты SSH на CentOS/RHEL 8

Как установить Fail2ban для защиты SSH на CentOS/RHEL 8

Рубрики:

Security

Метки:

, , , ,

В этой статье мы расскажем о том, как установить и настроить Fail2ban для защиты SSH. И как с помощью этого инструмента повысить уровень защищенности SSH-сервера на CentOS или RHEL 8 от атак методом перебора.

Содержание:

  1. Что такое Fail2ban
  2. Установка Fail2ban для защиты SSH на RHEL/CentOS 8
  3. Настройка приложения Fail2ban для защиты SSH
  4. Мониторинг заблокированных и подозрительных IP-адресов
  5. Выводы

Что такое Fail2ban

Fail2ban — это популярное бесплатное средство с открытым исходным кодом, помогающее противостоять атакам на вашу систему. Это приложение проверяет файлы журналов и выявляет IP-адреса, обладающие некоторыми признаками вредоносной активности (например, чрезмерно большим количеством неуспешных попыток авторизации). И в автоматическом режиме банит их (блокирует доступ, добавляя в черный список брандмауэра). По умолчанию Fail2ban поставляется с фильтрами для различных сервисов, в том числе — для sshd (SSH Daemon).

Установка Fail2ban для защиты SSH на RHEL/CentOS 8

Стоит отметить, что в официальных репозиториях отсутствует пакет Fail2Ban для защиты SSH. Однако его легко можно найти в репозитории Extra Packages for Enterprise Linux — EPEL. Чтобы открыть своей операционной системе доступ к репозиторию EPEL, откройте интерфейс командной строки и введите следующую команду:

 

Либо такую:

 

Далее просто установите пакет Fail2Ban для защиты SSH. Сделать это поможет следующая команда:

 


Настройка приложения Fail2ban для защиты SSH

Стоит отметить, что в каталоге /etc/fail2ban/ вы сможете найти файлы с настройками приложения Fail2ban. Тогда как в каталоге /etc/fail2ban/filter.d/ хранятся фильтры (например, файл фильтра для sshd — в каталоге /etc/fail2ban/filter.d/sshd.conf).

Файл jail.conf в каталоге /etc/fail2ban является основным файлом с настройками приложения Fail2Ban для защиты SSH. Однако не рекомендуется вносить в него прямые изменения. Потому что существует возможность того, что в будущем он будет перезаписан.

В результате собственные настройки следует сохранять в другой файл — jail.local. Либо в отдельные файлы с конфигурациями, которые потом будут размещены в каталоге /etc/fail2ban/jail.d/.

Важно: настройки из файла jail.local имеют более высокий приоритет и заменят собой параметры по умолчанию из файла jail.conf.

В этой статье мы будем показывать, как работать с файлом jail.local в каталоге /etc/fail2ban/. Чтобы создать его, введите в командную строку следующую команду:

 

Теперь нужно открыть файл текстовым редактором и внести в него необходимые нам настройки. Стоит отметить, что основные параметры указываются в разделе [DEFAULT]. В то время как настройки для sshd jail нужно писать в разделе [sshd]. Выглядеть это будет следующим образом:

 

Значения переменных в файле конфигурации:

  • ignoreip — имена хостов или IP-адреса, доступ которым нельзя блокировать;
  • bantime — длительность бана в секундах;
  • maxretry — количество попыток авторизации, после которых хост будет заблокирован;
  • findtime — интервал времени, за который хост должен завершить авторизацию, чтобы не быть заблокированным;
  • banaction — действия, за которые хост будет блокироваться;
  • backend — средство контроля логов Fail2ban.

В результате приведенные в качестве примера настройки означают следующее: если при попытке доступа с IP-адреса, который не равен 192.168.21.1, будут замечены 4 ошибочных попытки ввести пароль в течение 3 минут — он будет забанен на 3 часа.

Безусловно, для этого сначала нужно запустить настроенное приложение Fail2ban. Для проверки его работоспособности введите в командную строку команду systemctl:

 

Если вы все сделали правильно, вывод команды должен выглядеть следующим образом:

Мониторинг заблокированных и подозрительных IP-адресов

Только что мы разобрались в том, как настроить ваш Fail2ban для защиты sshd. Скорее всего, после запуска его работы у вас может возникнуть необходимость отслеживать заблокированные IP-адреса. Также многим специалистам нужно мониторить адреса, создающие проблемы. Стоит отметить, что специально для этого предусмотрен особый fail2ban-client. Текущее состояние приложения в целом поможет выяснить следующая команда:

 

С другой стороны, чтобы проверить sshd jail, нужно ввести в командную строку другую команду:

 

Также у вас наверняка возникнет потребность убрать заблокированный IP-адрес из черного списка Fail2ban. Сделать это можно с помощью следующей команды:

Выводы

Настроить Fail2ban для защиты SSH оказалось довольно просто. И если вы придерживались рекомендаций из этой статьи, у вас должно было все получиться. Кроме того, для лучшего понимания возможностей утилиты Fail2ban советуем прочитать ее MAN-страницы. Вызвать их в своей системе поможет следующий набор команд:

 

Если у вас есть какие-либо мысли касательно этой темы, которыми вы хотите поделиться — не стесняйтесь связаться с нами через форму обратной связи, расположенную ниже.

Спасибо за время, уделенное прочтению статьи о том, как установить Fail2Ban для защиты SSH на CentOS/RHEL 8!

Если возникли вопросы — задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Рубрики:

Security

Метки:

, , , ,

Больше похожих постов

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Поиск по сайту
Лучшее
Популярное
Рубрики
Меню