Перейти к содержанию

Системы управления базами данных

При работе по подключению систем управления базами данных в качестве источника событий в Платформу Радар вам может пригодиться следующая справочная информация:

Microsoft SQL Server. Event Log

Характеристики источника в Платформе Радар:

Характеристика Значение
Название Microsoft-SQL-Server
Номер (Порт) 1519
Вендор Microsoft
Тип SQLServer
Профиль сбора eventlog_input_local

Примечание: агент сбора лог-коллектора должен быть установлен на том же сервере, где и Microsoft SQL Server.

Настройка источника включает в себя следующие шаги:

  1. Включение аудита MS SQL Server.
  2. Создание учетной записи Windows.
  3. Предоставление пользователю прав доступа к журналу событий.
  4. Включение источника в платформе.

Шаг 1. Включение аудита MS SQL Server

  1. Запустите Microsoft SQL Server Management Studio.
  2. В окне подключения к базе данных укажите название экземпляра и введите учетные данные (см. рисунок 1).

    Подключение к базе данных

    Рисунок 1 -- Подключение к базе данных

  3. В разделе Object explorer перейдите во вкладку "Security" → "Audits". Вызовите контекстное меню и выберите опцию New Audit... (см. рисунок 2).

    Создание аудита

    Рисунок 2 -- Создание аудита

  4. В открывшейся вкладке "Create Audit", в поле Audit name укажите название аудита, в поле Audit destination выберите значение "Application Log" и нажмите кнопку ОК (см. рисунок 3).

    Настройка аудита

    Рисунок 3 -- Настройка аудита

  5. В разделе Object explorer перейдите во вкладку "Security" → "Server Audit Specification". Вызовите контекстное меню и опцию New Server Audit Specification... (см. рисунок 4).

    Создание спецификации аудита

    Рисунок 4 -- Создание спецификации аудита

  6. В открывшейся вкладке "Create Server Audit Specification" (см. рисунок 5) выполните следующие действия:

    • в поле Name укажите название спецификации аудита;
    • в поле Audit из выпадающего списка выберите ранее созданный аудит;
    • в поле Actions выберите типы событий для отслеживания,
    • нажмите кнопку ОК.

    Настройка спецификации аудита

    Рисунок 5 -- Настройка спецификации аудита

Шаг 2. Создание учетной записи Windows

  1. В панели управления Windows откройте консоль Computer Management (Управление компьютером).
  2. В консоли откройте раздел System Tools (Служебные программы)Local Users and Groups (Локальные пользователи и группы)Users (Пользователи), вызовите контекстное меню и выберите функцию New User (Новый пользователь) для создания нового пользователя (см. рисунок 6).

    Создание пользователя

    Рисунок 6 -- Создание пользователя

  3. В открывшемся окне New User (Новый пользователь) (см. рисунок 7) выполните следующие действия:

    • в поле Name (Имя) укажите имя нового пользователя;
    • в поле Password (Пароль) установите пароль и подтвердить его в поле Confirm Password (Подтвердить);
    • при необходимости установите следующие флаги:
      • User cannot change password (Запретить смену пароля пользователем);
      • Password never expires (Срок действия пароля неограничен).
    • нажмите кнопку Create.

    Настройка параметров пользователя

    Рисунок 7 -- Настройка параметров пользователя

IШаг 3. Предоставление пользователю прав доступа к журналу событий

  1. В консоли Computer Management (Управление компьютером) перейдите в раздел System Tools (Служебные программы)Local Users and Groups (Локальные пользователи и группы)Groups (Группы).
  2. Выберите в списке группу Event Log Readers (Читатели журнала событий), вызовите контекстное меню и выберите пункт Add To Group (Добавить в группу). Откроется окно "Event Log Readers Properties (Свойства: Читатели журнала событий)".
  3. В окне выполните следующие действия:

    • нажмите кнопку Add (Добавить);
    • в открывшемся окне "Select Users (Выбор: Пользователи)" выберите из списка ранее созданного пользователя и добавьте его в группу, нажав кнопку ОК.
  4. Нажмите кнопку OK.

Шаг 4. Включите источник Microsoft-SQL-Server.

Microsoft SQL Server. ODBC

Характеристики источника в Платформе Радар:

Характеристика Значение
Название Microsoft-SQL-Server
Номер (Порт) 1519
Вендор Microsoft
Тип SQLServer
Профиль сбора odbc_input

Примечание: агент сбора лог-коллектора должен быть установлен на том же сервере, где и Microsoft SQL Server.

Настройка источника включает в себя следующие шаги:

  1. Включение аудита MS SQL Server.
  2. Установка ODBC драйвера.
  3. Включение источника в платформе.

Шаг 1. Включение аудита MS SQL Server

  1. Запустите Microsoft SQL Server Management Studio.
  2. В окне подключения к базе данных укажите название экземпляра и введите учетные данные (см. рисунок 8).

    Подключение к базе данных

    Рисунок 8 -- Подключение к базе данных

  3. В разделе Object explorer перейдите во вкладку "Security" → "Audits". Вызовите контекстное меню и выберите опцию New Audit... (см. рисунок 9).

    Создание аудита

    Рисунок 9 -- Создание аудита

  4. В открывшейся вкладке "Create Audit", в поле Audit name укажите название аудита, в поле Audit destination выберите значение "Application Log" и нажмите кнопку ОК (см. рисунок 10).

    Настройка аудита

    Рисунок 10 -- Настройка аудита

  5. В разделе Object explorer перейдите во вкладку "Security" → "Server Audit Specification". Вызовите контекстное меню и опцию New Server Audit Specification... (см. рисунок 11).

    Создание спецификации аудита

    Рисунок 11 -- Создание спецификации аудита

  6. В открывшейся вкладке "Create Server Audit Specification" (см. рисунок 12) выполните следующие действия:

    • в поле Name укажите название спецификации аудита;
    • в поле Audit из выпадающего списка выберите ранее созданный аудит;
    • в поле Actions выберите типы событий для отслеживания;
    • нажмите кнопку ОК.

    Настройка спецификации аудита

    Рисунок 12 -- Настройка спецификации аудита

Шаг 2. Установка ODBC драйвера

  1. С официального сайта скачайте ODBC Driver for SQL Server.
  2. Установите скачанный драйвер на сервер с коллектором.
  3. Узнайте точное название драйвера. Для этого запустите Administrative ToolsODBC Data Sources (64-bit) (см. рисунок 13) во вкладке Drivers (поле Name)

    Рисунок 3 -- Раздел "Administrative Tools"

  4. Откроется окно просмотра информации о драйвере. Необходимое значение отображается на вкладке "Drivers" в поле Name (см. рисунок 14).

    Рисунок 14 -- Просмотр информации о драйвере

Шаг 3. Включите источник Microsoft-SQL-Server.

Oracle Database. Audit

Характеристики источника в Платформе Радар:

Характеристика Значение
Название Oracle-Database
Номер (Порт) 2770
Вендор Oracle
Тип Database
Профиль сбора tcp_input

Для настройки источника выполните следующие действия:

  1. Подключитесь к СУБД локально с привилегиями sysdba:

    # sqlplus / as sysdba
    
  2. Выполните команду:

    # alter session set "_ORACLE_SCRIPT"=true
    
  3. Установите журнал аудита OS:

    # ALTER SYSTEM SET audit_trail=OS SCOPE=SPFILE
    
  4. Выключите и включите СУБД:

    # Shutdown
    # Startup
    
  5. Проверьте параметры аудита командой:

    # show parameter audit
    

    Убедитесь, что audit_trail принял значение OS. Запишите значение audit_file_dest, оно понадобится при настройке отправки сообщений для параметра File.

  6. Выполните команду:

    # ALTER SYSTEM SET audit_sys_operations=true SCOPE=SPFILE
    
  7. Установите важность событий командой:

    # alter system set audit_syslog_level='local5.info' scope=spfile sid='*'
    
  8. Выполните команду

    # ALTER SYSTEM SET audit_trail=DB, EXTENDED SCOPE=SPFILE
    
  9. Выполните последовательно команды:

    # Shutdown
    # Startup
    # show parameter audit
    

    На выходе должны появиться сообщения (см. рисунок 15).

    Рисунок 15 -- Вывод сообщений

  10. Настройте параметры аудита:

    AUDIT ALTER SYSTEM BY ACCESS;
    AUDIT DELETE ON SYS.AUD$ BY ACCESS;
    AUDIT DELETE ON SYS.FGA_LOG$ BY ACCESS;
    AUDIT EXECUTE ON SYS.DBMS_FGA BY ACCESS;
    AUDIT INSERT ON SYS.AUD$ BY ACCESS;
    AUDIT INSERT ON SYS.FGA_LOG$ BY ACCESS;
    AUDIT SELECT ON SYS.DBA_USERS BY ACCESS;
    AUDIT SELECT ON SYS.LINK$ BY ACCESS;
    AUDIT SELECT ON SYS.USER_DB_LINKS BY ACCESS;
    AUDIT SELECT ON SYS.USER_HISTORY$ BY ACCESS;
    AUDIT SYSTEM AUDIT BY ACCESS;
    AUDIT TABLE BY ACCESS;
    AUDIT UPDATE ON SYS.AUD$ BY ACCESS;
    AUDIT UPDATE ON SYS.FGA_LOG$ BY ACCESS;
    
  11. В каталоге /etc/rsyslog.d/ создайте конфигурационный файл oracle_audit.conf и укажите в нем следующие настройки:

    input(type="imfile"  File="<значение audit_file_dest  из п.7>.xml"
    PersistStateInterval="100"
    Tag="oracle_audit_trail:"
    Severity="info"
    Facility="local5"
    startmsg.regex="<AuditRecord>"
    )
    local5.* @@<IP-адрес агента сбора лог-коллектора>:port
    

    Где:

    • local5 - необходимое значение facility;
    • @@ - передача данных по протоколу TCP;
    • <IP-адрес агента сбора лог-коллектора>  - IP-адрес, на котором развернут агент сбора лог-коллектора;
    • port - порт, по которому агент сбора лог-коллектора будет принимать события. Должен совпадать со значением, указанным в настройках соответствующего профиля сбора.
  12. Сохраните изменения и перезапустите службу rsyslog:

    # systemctl restart rsyslog.service
    
  13. Включите источник Oracle-Database.

Oracle Database. NetListener

Характеристики источника в Платформе Радар:

Характеристика Значение
Название Oracle-Database-NetListener
Номер (Порт) 2771
Вендор Oracle
Тип Database
Профиль сбора tcp_input

Для настройки источника выполните следующие действия:

  1. Запустите LSNRCTL командой:

    # LSNRCTL 
    
  2. Определите экземпляр используемой службы Oracle NetListener командой:

    # show current_listener
    

    После выполнения команды отобразится имя экземпляра СУБД.

  3. Для смены используемого экземпляра используется команда:

    # set current_listener
    
  4. Проверьте статус журналирования:

    # show log_status
    

    Если для параметра log_status указано OFF, то включите журналирование:

    # set log_status on save_config reload
    
  5. В каталоге /etc/rsyslog.d/ создайте конфигурационный файл oracle_netlistener.conf и укажите в нем следующие настройки:

    module(load="imfile" mode="inotify") #PollingInterval="10") #mode="inotify")
    input(type="imfile"
    File="/<параметр File из п.4 >/log.xml"  
    PersistStateInterval="100"
    Tag="oracle_netlistener:"
    Severity="info"
    Facility="local3"
    readMode="2"
    )local3.* @@<IP-адрес агента сбора лог-коллектора>:port
    

    Где:

    • local3 - необходимое значение facility;
    • @@ - передача данных по протоколу TCP;
    • <IP-адрес агента сбора лог-коллектора>  - IP-адрес агента сбора лог-коллектора;
    • port - порт, по которому агент сбора лог-коллектора будет принимать события. Должен совпадать со значением, указанным в настройках соответствующего профиля сбора.
  6. Сохраните изменения и перезапустите службу rsyslog:

    # systemctl restart rsyslog.service
    
  7. Включите источник Oracle-Database-NetListener.

Oracle MySQL

Характеристики источника в Платформе Радар:

Характеристика Значение
Название Oracle-MySQL
Номер (Порт) 4005
Вендор Oracle
Тип MySQL
Профиль сбора tcp_input

Для настройки источника выполните следующие действия:

  1. Установите модуль аудита MariaDB, последовательно выполнив команды:

    # wget http://mirror.mephi.ru/mariadb/mariadb-10.1.45/bintar-linux-x86_64/mariadb-10.1.45-linux-x86_64.tar.gz
    # sudo tar -xzf mariadb-10.5.5-linux-x86_64.tar.gz 
    # sudo install mariadb-10.1.45-linux-x86_64/lib/plugin/server_audit.so /usr/lib/mysql/plugin
    # sudo install mariadb-10.5.5-linux-x86_64/lib/plugin/server_audit.so /usr/lib/mysql/plugin
    # Sudo mysql
    # INSTALL PLUGIN server_audit SONAME 'server_audit.so'
    # SHOW PLUGINS
    # Set Global server_audit_logging=on
    # EXIT
    
  2. В конфигурационном файле /etc/mysql/mysql.conf.d/mysqld.cnf укажите следующие настройки::

    plugin-load=server_audit=server_audit.so
    server_audit_logging=on
    server_audit_events=connect,query,table,query_ddl,query_dml,query_dcl
    server_audit_output_type = SYSLOG
    server_audit_syslog_facility = LOG_SYSLOG
    server_audit_file_path = /var/log/mysql/audit.log
    
  3. Перезапустите сервис MySQL:

    service mysql restart
    
  4. В каталоге /etc/rsyslog.d/ создайте конфигурационный файл 20-mysql.conf и укажите в нем следующие настройки:

    template (name="radar" type="string"
    string="<%PRI%>%TIMESTAMP:::date-rfc3339% %HOSTNAME% %syslogtag%%$.suffix%%msg:::sp-if-no-1st-sp%%msg%")
    :syslogtag, contains, "mysql" @@<IP-адрес агента сбора лог-коллектора>:port;radar
    

    Где:

    • @@ - передача данных по протоколу TCP;
    • <IP-адрес агента сбора лог-коллектора>  - IP-адрес агента сбора лог-коллектора;
    • port - порт, по которому агент сбора лог-коллектора будет принимать события. Должен совпадать со значением, указанным в настройках соответствующего профиля сбора.
  5. Сохраните изменения и перезапустите службу rsyslog:

    # systemctl restart rsyslog.service
    
  6. Включите источник Oracle-MySQL.

PostgreSQL

Характеристики источника в Платформе Радар:

Характеристика Значение
Название PostgreSQL
Номер (Порт) 4000
Вендор PostgreSQL
Тип PostgreSQL
Профиль сбора udp_input

Для настройки источника выполните следующие действия:

  1. Узнайте расположение конфигурационного файла postgresql.conf на сервере:

    # psql -U <username> -c 'SHOW config_file' 
    

    Пример ответа:

    /var/app/data/postgresql.conf
    
  2. В конфигурационный файл postgresql.conf укажите следующие настройки:

    log_destination = 'syslog'
    logging_collector = off
    syslog_facility = 'LOCAL0'
    syslog_ident = 'postgres'
    syslog_sequence_numbers = on
    syslog_split_messages = off
    client_min_messages = log
    log_min_messages = info
    log_min_error_statement = info
    log_checkpoints = off
    log_connections = on
    log_disconnections = on
    log_duration = off
    log_error_verbosity = default
    log_hostname = on
    log_line_prefix = 'pgmessage: %m %a %u %d %r %i %e '
    log_statement = 'mod'
    lc_messages = 'en_US.UTF-8'
    
  3. Перезапустите службу postgresql.

  4. В каталоге /etc/rsyslog.d/ создайте конфигурационный файл 10-pgsql.conf и укажите в нем следующие настройки:

    if $programname == 'postgres' then @<IP-адрес агента сбора лог-коллектора>:port
    

    Где:

    • @ - передача данных по протоколу UDP;
    • <IP-адрес агента сбора лог-коллектора>  - IP-адрес агента сбора лог-коллектора;
    • port - порт, по которому агент сбора лог-коллектора будет принимать события. Должен совпадать со значением, указанным в настройках соответствующего профиля сбора.
  5. Сохраните изменения и перезапустите службу rsyslog:

    # systemctl restart rsyslog.service
    
  6. Включите источник PostgreSQL.