Как добавить фильтр MySQL в fail2ban на Plesk?

#mysql #plesk #fail2ban #jail

Вопрос:

Как вы заметили, Plesk не поставляется с фильтром MySQL, встроенным изначально для fail2ban, поэтому мы не можем создать тюрьму для этой службы.

Есть способ добавить его, но он не такой элегантный.

Что я могу сделать, чтобы добавить поддержку MySQL на fail2ban, предоставляемую Plesk?

Ответ №1:

  1. Перейдите в раздел «Инструменты и настройки».
  2. Нажмите на Запрет IP-адреса (Fail2Ban)
  3. Перейдите на вкладку «Тюрьмы».
  4. Нажмите кнопку «Управление фильтрами».
  5. Нажмите на кнопку «Добавить фильтр».

Установите заголовок «mysqld-auth» и это содержимое:

 # Fail2Ban filter for unsuccessful MySQL authentication attempts
#
#
# To log wrong MySQL access attempts add to /etc/my.cnf in [mysqld]:
# log-error=/var/log/mysqld.log
# log-warning = 2
#
# If using mysql syslog [mysql_safe] has syslog in /etc/my.cnf

[INCLUDES]

# Read common prefixes. If any customizations available -- read them from
# common.local before = common.conf

[Definition]

_daemon = mysqld

failregex = ^%(__prefix_line)s(?:d  |d{6} s?d{1,2}:d{2}:d{2} )?[w ] Access denied for user '[^'] '@'<HOST>' (to database '[^']*'|(using password: (YES|NO)))*s*$

ignoreregex =

# DEV Notes:
#
# Technically __prefix_line can equate to an empty string hence it can support
# syslog and non-syslog at once.
# Example:
# 130322 11:26:54 [Warning] Access denied for user 'root'@'127.0.0.1' (using password: YES)
#
# Authors: Artur Penttinen
#          Yaroslav O. Halchenko
 
  1. Сохраните и вернитесь к пункту 3.
  2. Нажмите «Добавить тюрьму» и заполните форму с новым фильтром, и это действие в текстовой области:

    iptables-multiport[name="mysqld-auth", port="http,https,3306"]

*Добавьте все порты, которые вы хотите…

  1. Установите местоположение своего журнала MySQL, в моем случае /var/log/mysql/error.log
  2. Убедитесь, что новая тюрьма активирована, если вы ее не активируете.

Следующие шаги-за вами…

Сохраните и попробуйте взломать себя, увидев журналы fail2ban:

 tail -f /var/log/fail2ban.log