MariaDB: настройка источника

Данное руководство описывает процесс настройки сбора событий MariaDB и их отправки в R-Vision SIEM.

Предварительные требования

Перед началом настройки убедитесь, что выполнены следующие условия:

  • На машине, с которой планируется сбор событий, установлен сервис rsyslog или syslog-ng.

  • Пользователь, выполняющий настройку, имеет права администратора.

Настройка MariaDB

Настройка журналирования

Процесс настройки журналирования MariaDB отличается в зависимости от версии.

Настройка сбора событий MariaDB версии 10 и выше

Настройте логирование событий в системный журнал. Для этого выполните следующие шаги:

  1. Проверьте, есть ли модуль аудита на вашем сервере:

    SHOW VARIABLES LIKE 'plugin_dir';
  2. Проверьте, есть ли .so-файл на сервере:

    ls /path/to/plugin/from/previous/step | grep audit
  3. После этого должен отобразиться файл server_audit.so.

  4. Если данного файла нет, установите пакет с помощью команды:

    sudo dnf install MariaDB-server-audit
  5. Создайте отдельный файл для настройки конфигурации аудита:

    sudo nano /etc/my.cnf.d/server_audit.cnf
    Путь к файлу конфигурации может отличаться в зависимости от используемой операционной системы. В данном руководстве рассматривается настройка сбора событий с RED OS.
  6. Добавьте секцию:

    [mysqld]
    # Загрузка плагина при старте.
    plugin_load_add = server_audit
    
    # Включение аудита.
    server_audit_logging = ON
    
    # Виды событий для логирования.
    server_audit_events = CONNECT,QUERY,QUERY_DDL,QUERY_DML,QUERY_DCL
    
    # Запись логов в системный журнал.
    server_audit_output_type = SYSLOG
    server_audit_syslog_facility = LOG_LOCAL6
    server_audit_syslog_priority = LOG_INFO
  7. Сохраните файл.

  8. Перезапустите MariaDB:

    sudo systemctl restart mariadb
  9. Проверьте работу плагина аудита:

    SELECT PLUGIN_NAME, PLUGIN_STATUS, LOAD_OPTION FROM information_schema.plugins WHERE PLUGIN_NAME = 'server_audit';
  10. Вы должны получить следующий вывод:

    +--------------+---------------+-------------+
    | PLUGIN_NAME  | PLUGIN_STATUS | LOAD_OPTION |
    +--------------+---------------+-------------+
    | SERVER_AUDIT | ACTIVE        | ON          |
    +--------------+---------------+-------------+
Настройка сбора событий MariaDB версии 5.7 и ниже

Настройте логирование событий в системный журнал. Для этого выполните следующие шаги:

  1. Проверьте, есть ли модуль аудита на вашем сервере:

    SHOW GLOBAL VARIABLES LIKE 'plugin_dir';
  2. Проверьте, есть ли .so-файл на сервере:

    ls /path/to/plugin/from/previous/step | grep audit
  3. После этого должен отобразиться файл server_audit.so.

  4. Если файла нет, установите пакет с помощью команды:

    sudo yum install MariaDB-server-audit
  5. Если плагин присутствует, подключитесь к MariaDB с правами администратора и выполните следующий запрос:

    INSTALL SONAME 'server_audit';
  6. Создайте отдельный файл для настройки конфигурации аудита:

    sudo nano /etc/my.cnf.d/server_audit.cnf
    Путь к файлу конфигурации может отличаться в зависимости от используемой операционной системы. В данном руководстве рассматривается настройка сбора событий с CentOS 7.
  7. Добавьте секцию:

    [mysqld]
    server_audit_logging=1
    
    server_audit_events=connect,table,query_ddl,query_dml,query_dcl
    
    server_audit_output_type=SYSLOG
    
    server_audit_syslog_facility=LOG_SYSLOG
  8. Сохраните файл.

  9. Перезапустите MariaDB:

    sudo systemctl restart mariadb
  10. Проверьте работу плагина аудита:

    SELECT PLUGIN_NAME, PLUGIN_STATUS, LOAD_OPTION FROM information_schema.plugins WHERE PLUGIN_NAME = 'server_audit';
  11. Вы должны получить следующий вывод:

    +--------------+---------------+-------------+
    | PLUGIN_NAME  | PLUGIN_STATUS | LOAD_OPTION |
    +--------------+---------------+-------------+
    | SERVER_AUDIT | ACTIVE        | ON          |
    +--------------+---------------+-------------+

Настройка отправки событий в R-Vision SIEM

В настоящем руководстве рассматривается передача событий с помощью сервиса rsyslog.

События сервера MariaDB могут отправляться на централизованный сервер syslog или напрямую в систему SIEM. Далее рассмотрим оба варианта настройки.

Чтобы настроить отправку событий сервера MariaDB, выполните следующие шаги:

  1. Создайте конфигурационный файл rsyslog в директории /etc/rsyslog.d/.

  2. Добавьте в файл следующие правила:

    if $syslogtag == 'mysql-server_auditing' or $programname == 'mysql-server_auditing' then {
      action(type="omfwd" target="<target>" port="<port>" protocol="<protocol>")
      stop
    }

    Здесь:

    • <target>: введите IP-адрес или полное доменное имя (FQDN) сервера syslog или узла кластера Kubernetes, на котором запущен коллектор SIEM.

    • <port>:

      • При отправке событий на сервер rsyslog укажите порт 514.

      • При отправке событий на конвейер SIEM укажите порт точки входа Syslog — любой свободный порт со значением больше 30000.

    • <protocol>: укажите протокол, используемый для точки входа на конвейере SIEM.

  3. Перезапустите rsyslog, чтобы изменения вступили в силу:

    sudo systemctl restart rsyslog

Настройка сбора событий источника на сервере syslog

Если события сначала отправляются на сервер syslog, настройте отправку логов с сервера в SIEM:

  1. Откройте конфигурационный файл rsyslog (/etc/rsyslog.conf или /etc/rsyslog.d/).

  2. Добавьте в файл следующее правило:

    # Укажите IP-адрес SIEM и порт, куда будут отправляться события.
    if $syslogtag == 'mysql-server_auditing' or $programname == 'mysql-server_auditing' then {
      action(type="omfwd" target="<target>" port="<port>" protocol="<protocol>")
      stop
    }

    Здесь:

    • <target>: введите IP-адрес или полное доменное имя (FQDN) узла кластера Kubernetes, на котором запущен коллектор SIEM.

    • <port>: укажите порт точки входа Syslog — любой свободный порт со значением больше 30000.

    • <protocol>: укажите протокол, используемый для точки входа на конвейере SIEM.

  3. Перезапустите rsyslog, чтобы изменения вступили в силу:

    sudo systemctl restart rsyslog

Настройка в R-Vision SIEM

Для настройки сбора и нормализации событий источника в R-Vision SIEM выполните следующие шаги:

  1. В интерфейсе R-Vision SIEM создайте новый конвейер в коллекторе.

  2. Добавьте на конвейер элемент Точка входа со следующими параметрами:

    • Название: введите название точки входа.

    • Тип точки входа: выберите вариант Syslog.

    • Порт точки входа: введите значение в соответствии с настройками на стороне сервера syslog.

    • Протокол: выберите вариант в соответствии с настройками на стороне сервера syslog.

  3. Добавьте на конвейер элемент Нормализатор с правилом MariaDB (идентификатор правила: RV-N-236).

  4. Соедините нормализатор с точкой входа.

  5. Добавьте на конвейер элемент Конечная точка типа Хранилище событий.

  6. Соедините конечную точку с нормализатором.

  7. Сохраните и установите конфигурацию конвейера.

Пример конфигурации конвейера:

mariadb pipeline

После настройки передачи событий, если настройка выполнена корректно, в хранилище начнут поступать события MariaDB.

Найти события MariaDB в хранилище можно по следующему фильтру:

normalization_rule_name = "MariaDB"

mariadb events search

Была ли полезна эта страница?

Обратная связь