Как установить и настроить Fail2Ban на Ubuntu

Fail2Ban – это важный инструмент безопасности, который защищает Linux-серверы от атак методом грубой силы, отслеживая журналы и запрещая вредоносные IP-адреса. Это руководство упрощает установку и настройку Fail2Ban на Ubuntu, содержит практические примеры и советы для эффективной защиты вашего VPS или выделенного сервера.

Зачем использовать Fail2Ban?

Fail2Ban повышает безопасность сервера благодаря:

  • Блокирования IP-адресов после неоднократных неудачных попыток входа в систему.

  • Защиты таких служб, как SSH, веб-серверы или электронная почта.

  • Снижение риска несанкционированного доступа.

  • Автоматизация правил брандмауэра для повышения эффективности.

Установка Fail2Ban

Сначала обновите список пакетов и установите Fail2Ban с помощью следующих команд:

sudo apt update
sudo apt install fail2ban -y После установки запустите и включите службу Fail2Ban:
sudo systemctl start fail2ban
sudo systemctl enable fail2ban

Настройка Fail2Ban

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

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local Отредактируйте файл конфигурации с помощью текстового редактора:
sudo nano /etc/fail2ban/jail.local

Настройки конфигурации ключей

  • bantime: Определяет продолжительность (в секундах), в течение которой IP-адрес будет запрещен.
  • findtime (время обнаружения): Определяет временное окно для обнаружения нескольких неудачных попыток.
  • maxretry: Количество неудачных попыток входа в систему, прежде чем IP-адрес будет заблокирован.
  • ignoreip (игнорировать): Список доверенных IP-адресов, которые не должны быть запрещены.

Примеры настроек:

[DEFAULT]
bantime = 600
findtime = 600
maxretry = 5
ignoreip = 127.0.0.1/8

Включение Fail2Ban для SSH

Чтобы включить Fail2Ban для защиты SSH, убедитесь, что в jail.local присутствует следующий раздел:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3 Сохраните файл и перезапустите Fail2Ban:
sudo systemctl restart fail2ban

Проверка состояния Fail2Ban

Чтобы убедиться, что Fail2Ban работает правильно, используйте следующую команду:

sudo fail2ban-client status Чтобы проверить состояние конкретного джейла (например, SSH):
sudo fail2ban-client status sshd

Снятие запрета с IP-адреса

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

sudo fail2ban-client set sshd unbanip 

Заключение

Fail2Ban – это простой, но мощный инструмент для защиты вашего сервера Ubuntu от атак методом перебора. Установив, настроив и протестировав его с помощью приведенных выше примеров, вы сможете защитить такие сервисы, как SSH, и снизить риски. В сочетании с надежными VPS или выделенными серверами AvaHost, Fail2Ban обеспечивает безопасность и устойчивость вашей хостинг-среды с минимальными усилиями.