Главная > Управление пакетами и системой > fail2ban

Полное руководство по Fail2Ban

Fail2Ban — это инструмент безопасности, который автоматически блокирует атаки грубой силы на сервер. В этом руководстве вы узнаете все о установке, настройке и основных командах Fail2Ban.

Методы установки

Fail2Ban доступен в качестве стандартного пакета в большинстве дистрибутивов Linux. Вы можете легко установить его, используя следующие команды.

Debian/Ubuntu

sudo apt-get update
sudo apt-get install fail2ban

CentOS/RHEL

sudo yum install epel-release
sudo yum install fail2ban

Запуск и активация службы Fail2Ban после установки

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

После установки запустите службу и настройте ее на автоматический запуск при загрузке.

Основные файлы конфигурации

Основные настройки Fail2Ban выполняются в файлах `jail.conf` и `jail.local`. Рекомендуется не изменять оригинальный файл `jail.conf`, а создать файл `jail.local` для переопределения настроек.

⚙️ Расположение основных файлов конфигурации

/etc/fail2ban/jail.conf

📝 Файл настроек пользователя (рекомендуется)

/etc/fail2ban/jail.local

Чтобы изменить настройки `jail.conf`, создайте этот файл и добавьте только необходимые настройки. Этот метод предотвращает перезапись оригинального файла при обновлении.

Примеры основных настроек в файле jail.local

Ниже приведены настройки, которые часто добавляются в файл `jail.local`. Эти настройки позволяют детально контролировать поведение Fail2Ban.

  • [sshd]: Начинает настройки для службы sshd.
  • enabled = true: Активирует этот jail.
  • port = ssh: Назначает порт ssh (по умолчанию 22) для защиты.
  • maxretry = 5: Блокирует, если количество неудачных попыток входа превышает 5 в течение определенного времени (findtime).
  • bantime = 10m: Устанавливает время блокировки (10 минут).
  • findtime = 10m: Устанавливает время (10 минут) для подсчета количества неудачных попыток входа.

Основные команды

Основные команды, используемые для проверки состояния службы Fail2Ban или для ручной блокировки/разблокировки IP-адресов.

Проверка состояния службы Fail2Ban

sudo systemctl status fail2ban

Проверяет, запущена ли служба Fail2Ban корректно.

Проверка журнала Fail2Ban

sudo journalctl -u fail2ban

Проверяет подробные логи работы, включая список IP-адресов, которые были заблокированы Fail2Ban.

Ручная блокировка определенного IP

sudo fail2ban-client set sshd banip 1.2.3.4

Блокирует указанный IP-адрес вручную в jail `sshd`.

Ручная разблокировка определенного IP

sudo fail2ban-client set sshd unbanip 1.2.3.4

Разблокирует ранее заблокированный IP-адрес вручную в jail `sshd`.

Просмотр текущего списка заблокированных IP

sudo fail2ban-client status sshd

Проверяет список IP-адресов, которые в данный момент заблокированы jail `sshd`.


Те же команды в категории