Содержание: If Fail2Ban is enabled on your Plesk server, you may want to configure one or more Fail2Ban jails that are used to block IP addresses.

In this topic, you will learn how to create, configure, remove, activate, and deactivate Fail2Ban jails. You will also learn how to add filters used by Fail2Ban jails.

Общие сведения об обновлениях

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

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

In Plesk, there are preconfigured jails for all hosting services (web server, mail server, FTP server, and so on). Most of them work in the same way: they detect failed login attempts and block access to the service for ten minutes. These jails are listed at the «Jails» tab at Tools & Settings > IP Address Banning (Fail2Ban) (under «Security»).

image list of jails

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

  • 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. Войдите в Plesk.
  2. Go to  Tools & Settings > IP Address Banning (Fail2Ban) (under «Security»), and then go to the «Jails» tab.
  3. Выберите джейл и нажмите кнопку Включить. Эта кнопка доступна только в том случае, когда служба Fail2Ban включена (стоит галочка Включить обнаружение атак на вкладке Настройки).

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

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

  1. Войдите в Plesk.
  2. Go to  Tools & Settings > IP Address Banning (Fail2Ban) (under «Security»), and then go to the «Jails» tab.
  3. Выберите джейл и нажмите кнопку Выключить.

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

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

  1. Войдите в Plesk.

  2. Go to  Tools & Settings > IP Address Banning (Fail2Ban) (under «Security»), and then go to the «Jails» tab.

  3. Нажмите Добавить домен.

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

    Вы можете использовать следующие фильтры, доступные в 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.

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

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

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

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

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

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

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

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

  9. Нажмите OK.

    image edit jail settings

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

  1. Войдите в Plesk.
  2. Go to  Tools & Settings > IP Address Banning (Fail2Ban) (under «Security»), and then go to the «Jails» tab.
  3. Click the jail’s name, and then click Change Settings.
  4. Внесите изменения в настройки джейла и нажмите OK.

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

  1. Войдите в Plesk.
  2. Go to  Tools & Settings > IP Address Banning (Fail2Ban) (under «Security»), and then go to the «Jails» tab.
  3. Выберите джейл и нажмите Удалить.

Примечание: You can only remove custom jails. Jails shipped with Plesk cannot be removed, but can be deactivated.

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

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

  1. Войдите в Plesk.
  2. Go to  Tools & Settings > IP Address Banning (Fail2Ban) (under «Security»), and then go to the «Jails» tab.
  3. Click Manage Filters, and then click Add Filter.
  4. Укажите имя фильтра и регулярное выражение, по которому будут проверяться строки в файлах журналов. Подробнее о фильтрах 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.