MySQL
Данное руководство описывает процесс настройки сбора и отправки событий MySQL в R-Vision SIEM.
Настройка MySQL
Установка плагина для ведения журнала аудита
Для настройки аудита MySQL установите плагин для ведения журнала аудита, разработанный компанией Percona. Он поддерживает полный аудит в различных форматах, таких как XML, JSON и CSV, а также регистрирует события, связанные с аутентификацией.
Плагин поддерживает только MySQL версии 8.0 и выше. |
Чтобы установить плагин аудита Percona, выполните следующие действия:
-
Скачайте архив с плагином, выполнив следующую команду:
wget https://downloads.percona.com/downloads/Percona-Server-8.0/Percona-Server-8.0.36-28/binary/tarball/Percona-Server-8.0.36-28-Linux.x86_64.glibc2.35.tar.gz
-
Распакуйте архив с плагином:
tar -xvf Percona-Server-8.0.36-28-Linux.x86_64.glibc2.35.tar.gz --wildcards --no-anchored '*audit_log.so*'
-
Получите путь к директории, в которой располагаются плагины MySQL:
-
Войдите в консоль MySQL:
mysql -u root -p -h localhost
-
Выполните следующий запрос:
SHOW GLOBAL VARIABLES LIKE 'plugin_dir';
Пример вывода запроса пути к директории плагинов
+---------------+--------------------------+ | Variable_name | Value | +---------------+--------------------------+ | plugin_dir | /usr/lib64/mysql/plugin/ | +---------------+--------------------------+ 1 row in set (0.00 sec)
В примере директория плагинов —
/usr/lib64/mysql/plugin/
.
-
-
Скопируйте плагин в директорию плагинов:
cp Percona-Server-8.0.36-28-Linux.x86_64.glibc2.35/lib/plugin/audit_log.so <plugin-dir>
Здесь:
-
<plugin-dir>
— директория плагинов, полученная на шаге 3.
-
-
Установите плагин:
-
Войдите в консоль MySQL:
mysql -u root -p -h localhost
-
Выполните следующий запрос:
INSTALL PLUGIN audit_log SONAME 'audit_log.so';
Если плагин установлен успешно, отобразится сообщение:
Query OK, 0 rows affected (0.02 sec)
-
-
Добавьте настройки плагина в раздел
_[mysqld]_
в файле my.cnf:[mysqld] audit_log_format = JSON audit_log_policy = ALL audit_log_handler = SYSLOG
-
Перезапустите сервер MySQL:
systemctl restart mysqld
Настройка службы rsyslog
Чтобы настроить службу rsyslog, выполните следующие действия:
-
Создайте файл конфигурации rsyslog:
sudo nano /etc/rsyslog.d/10-siem.conf
-
Добавьте в созданный файл следующее правило:
if $syslogtag == 'mysqld' or $syslogtag == 'percona-audit' then { action(type="omfwd" target="<target>" port="514" protocol="tcp") stop }
Здесь:
-
<target>
— IP-адрес или полное доменное имя (FQDN) централизованного syslog-сервера, с которого будет осуществляться отправка сообщений в SIEM.
-
-
Перезапустите rsyslog для применения изменений:
sudo systemctl restart rsyslog
Настройка syslog-сервера
Для настройки syslog-сервера выполните следующие шаги:
-
Откройте конфигурационный файл rsyslog (
/etc/rsyslog.conf
или/etc/rsyslog.d/
). -
Добавьте в файл правило обработки CEF-сообщений:
if $syslogtag == 'mysqld' or $syslogtag == 'percona-audit' then { action(type="omfwd" Target="<target>" Port="<port>" Protocol="tcp") stop }
Здесь:
-
<target>
— IP-адрес или полное доменное имя (FQDN) централизованного syslog-сервера, с которого будет осуществляться отправка сообщений в SIEM. -
<port>
— порт точки входа Syslog на конвейере SIEM — любой свободный порт в диапазоне 30000—32767.
-
-
Перезапустите rsyslog для применения изменений:
sudo systemctl restart rsyslog
Настройка в R-Vision SIEM
Для интеграции источника с R-Vision SIEM выполните следующие шаги:
-
Добавьте на конвейер элемент Точка входа со следующими параметрами:
-
Название: введите название точки входа.
-
Тип точки входа: выберите вариант Syslog.
-
Порт точки входа: введите значение в соответствии с настройками на стороне syslog-сервера.
-
Протокол: выберите вариант TCP.
-
-
Добавьте на конвейер элемент Нормализатор с правилами Oracle MySQL (идентификатор правила: RV-N-82) и Oracle MySQL (идентификатор правила: RV-N-83).
-
Соедините нормализатор с точкой входа.
-
Добавьте на конвейер элемент Конечная точка типа Хранилище событий.
-
Соедините конечную точку с нормализатором.
-
Сохраните и установите конфигурацию конвейера.
Пример конфигурации конвейера:
После настройки передачи событий, если настройка выполнена корректно, в хранилище начнут поступать события MySQL.
Найти события MySQL в хранилище можно по следующему фильтру:
|
Типы обрабатываемых событий
Событиями аудита являются выполняемые команды MySQL. С их перечнем можно ознакомиться в официальной документации MySQL.