# Управление джейлами Fail2Ban

Продвинутые пользователи также могут настроить параметры так называемых джейлов Fail2Ban, которые служат для блокировки IP-адресов. Джейл Fail2Ban ― это комбинация из фильтра и одного или нескольких действий. Фильтр определяет регулярное выражение, которое совпадает с шаблоном, соответствующим неудавшейся попытке входа или другим подозрительным операциям. Действия определяют команды, которые выполняются, когда фильтр обнаруживает опасный IP-адрес.

Джейлы могут находиться в активном или неактивном состоянии. Во время работы службы Fail2Ban только активные джейлы будут использоваться для мониторинга файлов журналов и блокировки подозрительных IP-адресов.

В Plesk, существуют уже настроенные джейлы для всех служб хостинга (веб-сервер, почтовый сервер, FTP сервер и т. д.). Многие из них работают одинаково: обнаруживают неудачные попытки входа и блокируют доступ к службе на 10 минут. Эти джейлы находятся на вкладке Джейлы на странице Инструменты и настройки > Блокировка IP-адресов (Fail2Ban).

Доступны следующие заранее настроенные джейлы:

- plesk-apache ищет ошибки авторизации Apache и блокирует нарушителей на 10 минут.
- plesk-apache-badbot ищет коллекторы адресов электронной почты и сканеров уязвимостей в файлах журнала доступа Apache. Блокировка длится два дня.
- plesk-dovecot ищет ошибки аутентификации Dovecot IMAP, POP3 и Sieve и блокирует нарушителей на 10 минут.
- plesk-horde и plesk-roundcube обнаруживают ошибки входа в веб-интерфейс почтового клиента и блокируют доступ к веб-службе на 10 минут.
- plesk-modsecurity блокирует IP-адреса, определенные как вредоносные брандмауэром для веб-приложений ModSecurity. Этот джейл можно активировать только в том случае, если работает ModSecurity; и он будет блокировать обнаруженные адреса, даже если ModSecurity работает в режиме «Только обнаружение». Блокировка длится 10 минут.
- plesk-panel обнаруживает ошибки входа в Plesk и блокирует нарушителей на 10 минут.
- plesk-postfix ищет ошибки аутентификации Postfix SMTP и SASL и блокирует нарушителей на 10 минут.
- plesk-proftpd ищет ошибки входа на ProFTPD и блокирует нарушителей на 10 минут.
- plesk-wordpress ищет ошибки аутентификации WordPress и блокирует нарушителей на 10 минут.
- recidive ищет блокировки, установленные другими джейлами, в собственном журнале Fail2Ban. Он блокирует хосты, которые за последние 10 минут были 5 раз заблокированы другими джейлами. Блокировка длится одну неделю и распространяется на все службы на сервере.
- ssh ищет ошибки входа по SSH и блокирует нарушителей на 10 минут.

Заранее настроенные джейлы для неустановленных компонентов Plesk не показываются в списке. Например, если веб-почта RoundCube не установлена, джейла plesk-roundcube нет в списке доступных джейлов.

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

## Активация и деактивация джейлов

Чтобы активировать джейл:

1. Откройте Инструменты и настройки > Блокировка IP-адресов (Fail2Ban) > Джейлы.
2. Выберите джейл и нажмите кнопку Включить. Эта кнопка доступна только в том случае, когда служба Fail2Ban включена (стоит галочка Включить обнаружение атак на вкладке Настройки).

Примечание

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

Чтобы деактивировать джейл:

1. Откройте Инструменты и настройки > Блокировка IP-адресов (Fail2Ban) > Джейлы.

2. Выберите джейл и нажмите кнопку Выключить.

## Настройка джейла

Чтобы создать джейл:

1. Откройте Инструменты и настройки > Блокировка IP-адресов (Fail2Ban) > Джейлы > Добавить джейл.

2. Укажите фильтр.

   Вы можете использовать следующие фильтры, доступные в Plesk по умолчанию:

   - apache-auth ― ошибки авторизации Apache,
   - apache-badbots ― спам-боты и нежелательные поисковые роботы,
   - plesk-courierlogin ― ошибки IMAP- и POP3-аутентификации Courier,
   - plesk-dovecot ― ошибки IMAP-, POP3- и Sieve-аутентификации,
   - plesk-horde ― ошибки аутентификации веб-почты Horde,
   - plesk-modsecurity ― атаки на веб-приложения, обнаруженные брандмауэром для веб-приложений ModSecurity,
   - plesk-panel ― ошибки аутентификации Plesk,
   - plesk-qmail ― ошибки аутентификации QMail SMTP,
   - plesk-roundcube ― ошибки аутентификации веб-почты Roundcube,
   - plesk-wordpress ― ошибки аутентификации WordPress,
   - postfix-sasl ― ошибки SMTP- и SASL-аутентификации Postfix,
   - proftpd ― ошибки входа по ProFTPD,
   - recidive ― повторно заблокированные адреса,
   - sshd ― ошибки входа по SSH.

   Вы также можете добавить свой фильтр. Подробности смотрите далее в разделе Управление фильтрами.

3. Укажите действие джейла.

   Вы можете использовать следующие действия, доступные в Plesk по умолчанию:

   - iptables ― заблокировать злоумышленника на одном порту,
   - iptables-allports ― заблокировать злоумышленника на всех портах,
   - iptables-multiport ― заблокировать злоумышленника на нескольких портах,
   - sendmail ― отправить уведомление на указанный адрес электронной почты.

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

4. В поле Путь к журналу укажите один или более файлов журнала, которые Fail2ban будет проверять на наличие признаков атаки.

5. Утановить продолжительность блокировки IP-адреса в секундах.

6. Установите количество неудачных попыток входа.

7. Нажмите OK.

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

1. Откройте Инструменты и настройки > Блокировка IP-адресов (Fail2Ban) > Джейлы, нажмите название джейла, затем нажмите Изменить настройки.
2. Внесите изменения в настройки джейла и нажмите OK.

Чтобы удалить джейл:

1. Откройте Инструменты и настройки > Блокировка IP-адресов (Fail2Ban) > Джейлы.
2. Выберите джейл и нажмите Удалить.

Примечание

Джейлы, поставляемые с Plesk, нельзя удалить, но можно деактивировать. Джейлы, которые вы добавили сами, удалить можно.

## Управлять фильтрами

Чтобы добавить новый фильтр для джейла:

1. Откройте Инструменты и настройки > Блокировка IP-адресов (Fail2Ban) > Джейлы > Управление фильтрами > Добавить фильтр.
2. Укажите имя фильтра и регулярное выражение, по которому будут проверяться строки в файлах журналов. Подробнее о фильтрах Fail2Ban смотрите в документации Fail2Ban ― http://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Filters. Так как Fail2Ban написан на Python, подробности о регулярных выражениях Python смотрите в документации Python ― https://docs.python.org/2/library/re.html.