Установка и Настройка Fail2ban в Debian 11

Приветствую вас мои друзья. В этой статье мы покажем вам как выполняется Установка и Настройка Fail2ban в Debian 11. Благодаря этому инструменту вы сможете предотвратить множество атак на ваш сервер. Как и все инструменты он не идеален, но Fail2ban добавит безопасности серверу, и мы можем быть немного спокойнее.

Что такое Fail2ban?

Fail2ban — это инструмент для защиты серверов от атак, основанных на подборе паролей или переборе попыток входа. Он работает, анализируя логи системы и других приложений и автоматически блокирует IP-адреса, с которых обнаружена подозрительная или недопустимая активность.

Fail2Ban может снизить частоту неправильных попыток аутентификации, но не может полностью устранить риск, связанный с слабой аутентификацией. Для достижения более надежной защиты служб рекомендуется настроить использование двухфакторной аутентификации или использовать публичные/частные механизмы аутентификации. Это поможет обеспечить дополнительный уровень безопасности и уменьшить возможность несанкционированного доступа к вашим службам.

Это говорит нам о том, что Fail2ban не является чудотворным средством. Безопасность всегда будет зависеть от нас и от того, насколько серьезно мы относимся к ней в нашей системе.

Как работает Fail2ban?

Fail2ban сканирует файлы журналов (например, /var/log/apache/error_log) и запрещает IP, которые показывают признаки вредоносности — слишком много отказов пароля, поиск эксплойтов и т.д.

Из коробки Fail2Ban поставляется с фильтрами для различных сервисов (apache, courier, ssh и т.д.).

Итак, давайте выполним установку и настройку Fail2ban в Debian 11.

Установка Fail2ban в Debian 11

Так как это очень важная утилита, то мы можем найти ее в официальных репозиториях Debian 11.

Перед его установкой необходимо полностью обновить сервер.

sudo apt update

sudo apt upgrade

Далее требуется выполнить следующую команду для установки Fail2ban.

sudo apt install fail2ban

Установка Fail2ban в Debian 11
Установка Fail2ban в Debian 11

Fail2ban встраивается в систему и управляется как системная служба. Аналогично таким как сервисы Apache или MariaDB. Он запускается в фоновом режиме и автоматически работает при каждом запуске системы. Администраторы могут управлять и настраивать Fail2ban с использованием соответствующих инструментов и конфигурационных файлов. Также мониторить его работу и результаты через системные журналы или интерфейс командной строки. Такая системная интеграция позволяет Fail2ban эффективно выполнять свои функции по обнаружению и блокировке подозрительной активности.

После установки Fail2ban  его требуется  запустить, для этого выполните команду.

sudo systemctl start fail2ban

Также не забудьте добавить его в автозагрузку при старте системы.

sudo systemctl enable fail2ban

И наконец проверьте статус службы, чтобы убедиться, что Fail2ban работает правильно.

sudo systemctl status fail2ban

Если вы получите результат, подобный этому, то значит Fail2ban установлен правильно и служба работает должным образом.

Проверка статуса Fail2ban в системе
Проверка статуса Fail2ban в системе

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

Настройка Fail2ban в Debian 11

Конфигурация находится в файле /etc/fail2ban/jail.conf, который мы можем изменить. Но перед изменением требуется создать резервную копию.

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.conf.bak

После этого мы можем отредактировать его, чтобы установить свои предпочтения относительно поведения Fail2ban.

sudo nano /etc/fail2ban/jail.conf

Файл конфигурации
Файл конфигурации

Давайте рассмотрим некоторые из основных директив.

Первое что требуется сделать это определить время бана предполагаемого злоумышленника. Для этого найдите bantime и задайте ему подходящее значение. Например два ну или три часа.

bantime = 120m

Чтобы избежать повторных атак, можно установить время поиска.

findtime = 5m

То есть, если злоумышленник повторит атаку меньше чем через 5 минут, то он будет забанен, в противном случае счетчик запустится снова.

Директива Max Retry устанавливает количество неудач перед тем, как IP будет забанен.

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

ignoreip = 192.168.0.192

В этом случае вышеуказанный IP-адрес будет игнорироваться всеми этими правилами.

Если вы прокрутите страницу вниз, вы обнаружите настройки Fail2ban для каждой службы поддерживаемой им, таких как SSH или Apache. Для каждой конкретной службы, вы можете настроить параметры, связанные с обнаружением и блокировкой подозрительной активности. Это позволяет вам адаптировать работу Fail2ban к вашим конкретным потребностям и требованиям безопасности для каждой службы отдельно.

В конце требуется сохранить данные и применить эти изменения. Для этого просто перезапустите службу.

sudo systemctl restart fail2ban

Для активации модулей Fail2ban вам потребуется изменить файл /etc/fail2ban/jail.d/defaults-debian.conf. В этом файле можно настроить параметры и опции для различных модулей Fail2ban, которые позволяют определить поведение системы в отношении обнаружения и блокировки подозрительной активности.

sudo nano /etc/fail2ban/jail.d/defaults-debian.conf

Например, чтобы включить SSH, вам требуется сделать так.

[sshd]
enabled = true

Сохраните изменения и закройте редактор.

Теперь Fail2ban готов к бою и блокировки нежелательной активности на портах сервера.

Заключение

В заключение хочу сказать, что безопасность требует серьезного отношения. Хотя она не всегда идеальна, но у нас есть инструменты, которые помогают нам в этом процессе и одним из таких инструментов является Fail2ban. Fail2ban предоставляет средства для обнаружения и блокировки подозрительной активности, улучшая безопасность системы. С его помощью можно снизить риск несанкционированного доступа и защитить наши службы от злоумышленников.

Nazario

Я — Nazario, создатель и автор сайта linuxwin.ru, специализируюсь на информационных технологиях с акцентом на системное администрирование Linux и Windows, веб-разработку и настройку различных систем.

Linux и Windows
Выскажите своё мнение или присоединяйтесь к обсуждению:

Отправляя комментарий, вы даете согласие на обработку ваших данных в соответствии с политикой конфиденциальности и даёте согласие на их использование.