Дерево страниц

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 2 Следующий »

Служба fail2ban ограничивает возможность подбора паролей и поиска уязвимостей сетевых сервисов, блокируя доступ к этим сервисам для узлов, производящих подозрительные действия. Такая возможность может быть очень полезна для сетевых сервисов, доступ к которым необходим из сети Интернет.

Данная статья применима к:

  • ОС ОН Орёл 2.12

Установка службы

Установку  службы fail2ban можно с помощью графического менеджера пакетов или из командной строки командой:

sudo apt install fail2ban

Конфигурация службы

Служба fail2ban работает с четырьмя типами конфигурационных файлов:

Файл(ы)Описание
/etc/fail2ban/fail2ban.confГлобальные настройки службы и настройки "по умолчанию"
/etc/fail2ban/filter.d/*.confФильтры, определяющие обнаружение неудачных попыток аутентификации
/etc/fail2ban/action.d/*.confДействия, определяющие порядок блокировки/разблокировки

/etc/fail2ban/jail.conf
/etc/fail2ban/jail.d/*.conf

Определения комбинаций фильтров и действий


Блокировка по умолчанию

По умолчанию служба fail2ban защищает сервер sshd. Эта блокировка включена в созданном при установке пакета файле /etc/fail2ban/jail.d/defaults-debian.conf.
Cодержимое этого файла "по умолчанию":

[sshd]
enabled = true

При этом доступ блокируется на 10 минут, если неправильный пароль был введен 5 раз в течение 10 минут, а эти параметры блокировки заданы в файле /etc/fail2ban/jail.conf.

Параметры блокировок и их изменение

Параметры блокировок указаны в файле /etc/fail2ban/jail.conf. Для изменения параметров их можно исправить в этом файле, либо (лучше) создать в /etc/fail2ban/jail.d файл с расширением .conf и любым удобным именем, в котором переопределить значения параметров, например, файл/etc/fail2ban/jail.d/local.conf:

[DEFAULT]
bantime = 300
maxretry = 10
findtime = 3600
ignoreip = 10.0.15.0/24

В приведенном примере определяются следующие значения параметров:

  • секция [DEFAULT] означает, что параметры будут применяться ко всем блокировкам по умолчанию;
  • блокировка производится на 5 минут (300 секунд);
  • дается 10 попыток ввода пароля;
  • учитываются неудачные попытки входа в течение часа (3600 секунд);
  • игнорируются попытки перебора пароля из сети 10.0.15.0/24.

После изменения конфигурации fail2ban нужно перезапустить, например, командой

sudo systemctl restart fail2ban

Добавление блокировок, преднастроенные блокировки

Для добавления других блокировок, кроме ssh, нужно создать в директории /etc/fail2ban/jail.d файл с расширением .conf, содержащий переопределение секции соответствующей блокировки с параметром enabled=true.
Например, для защиты dovecot создадим файл /etc/fail2ban/jail.d/dovecot.conf:

[dovecot]
enabled = true
bantime = 120

В секции [dovecot] этого файла можно указать специальные параметры блокировки (например, bantime), которые будут применяться только для dovecot, в примере это время определено как 2 минуты (120 секунд).

В составе fail2ban имеется ряд преднастроеных блокировок, которые определены в файлах, содержащихся в каталоге /etc/fail2ban/filters.d/ (например, блокировка dovecot определена в /etc/fail2ban/filters.d/dovecot.conf).
Эти блокировки можно включать описанным выше способом по мере необходимости.

Выключение ошибочной блокировки

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

fail2ban-client set <имя блокировки> unbanip <IP-адрес узла>
Например, разблокировать доступ к ssh для узла 10.0.15.35 можно командой:
fail2ban-client set sshd unbanip 10.0.15.35

Более подробная информация по работе и настройке службы содержится в справочной системе man:

man fail2ban
man fail2ban-server
man fail2ban-client
man jail.conf
  • Нет меток