Системы управления базами данных
При работе по подключению систем управления базами данных в качестве источника событий в Платформу Радар вам может пригодиться следующая справочная информация:
Microsoft SQL Server. Event Log
Характеристики источника в Платформе Радар:
| Характеристика | Значение |
|---|---|
| Название | Microsoft-SQL-Server |
| Номер (Порт) | 1519 |
| Вендор | Microsoft |
| Тип | SQLServer |
| Профиль сбора | eventlog_input_local |
Примечание: агент сбора лог-коллектора должен быть установлен на том же сервере, где и Microsoft SQL Server.
Настройка источника включает в себя следующие шаги:
- Включение аудита MS SQL Server.
- Создание учетной записи Windows.
- Предоставление пользователю прав доступа к журналу событий.
- Включение источника в платформе.
Шаг 1. Включение аудита MS SQL Server
- Запустите Microsoft SQL Server Management Studio.
-
В окне подключения к базе данных укажите название экземпляра и введите учетные данные (см. рисунок 1).

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

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

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

Рисунок 4 -- Создание спецификации аудита
-
В открывшейся вкладке "Create Server Audit Specification" (см. рисунок 5) выполните следующие действия:
- в поле Name укажите название спецификации аудита;
- в поле Audit из выпадающего списка выберите ранее созданный аудит;
- в поле Actions выберите типы событий для отслеживания,
- нажмите кнопку ОК.

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

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

Рисунок 7 -- Настройка параметров пользователя
IШаг 3. Предоставление пользователю прав доступа к журналу событий
- В консоли Computer Management (Управление компьютером) перейдите в раздел System Tools (Служебные программы) → Local Users and Groups (Локальные пользователи и группы) → Groups (Группы).
- Выберите в списке группу Event Log Readers (Читатели журнала событий), вызовите контекстное меню и выберите пункт Add To Group (Добавить в группу). Откроется окно "Event Log Readers Properties (Свойства: Читатели журнала событий)".
-
В окне выполните следующие действия:
- нажмите кнопку Add (Добавить);
- в открывшемся окне "Select Users (Выбор: Пользователи)" выберите из списка ранее созданного пользователя и добавьте его в группу, нажав кнопку ОК.
-
Нажмите кнопку OK.
Шаг 4. Включите источник Microsoft-SQL-Server.
Microsoft SQL Server. ODBC
Характеристики источника в Платформе Радар:
| Характеристика | Значение |
|---|---|
| Название | Microsoft-SQL-Server |
| Номер (Порт) | 1520 |
| Вендор | Microsoft |
| Тип | SQLServer |
| Профиль сбора | odbc_input |
Примечание: агент сбора лог-коллектора должен быть установлен на том же сервере, где и Microsoft SQL Server.
Настройка источника включает в себя следующие шаги:
- Включение аудита MS SQL Server.
- Установка ODBC драйвера.
- Сетевые настройки сервера.
- Конфигурация профиля сбора.
- Включение источника в платформе.
Шаг 1. Включение аудита MS SQL Server
- Запустите Microsoft SQL Server Management Studio.
-
В окне подключения к базе данных укажите название экземпляра и введите учетные данные (см. рисунок 8).

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

Рисунок 9 -- Создание аудита
-
В открывшейся вкладке "Create Audit", в поле Audit name укажите название аудита, в поле Audit destination выберите значение "File", в поле Path укажите путь к каталогу хранения файла журнала и нажмите кнопку ОК (см. рисунок 10).

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

Рисунок 11 -- Создание спецификации аудита
-
В открывшейся вкладке "Create Server Audit Specification" (см. рисунок 12) выполните следующие действия:
- в поле Name укажите название спецификации аудита;
- в поле Audit из выпадающего списка выберите ранее созданный аудит;
- в поле Actions выберите типы событий для отслеживания;
- нажмите кнопку ОК.

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

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

Рисунок 14 -- Просмотр информации о драйвере
Шаг 3. Сетевые настройки сервера
- Откройте диспетчер конфигурации SQL Server Configuration Manager.
-
Выберите службу SQL Server Network Configuration → Protocols for SQLEXPRESS (см. рисунок 15).

Рисунок 15 -- Подключение по протоколу TCP/IP
-
В списке протоколов выберите протокол TCP/IP, вызовите контекстное меню и установите статус "Enabled" . Затем из контекстного меню выберите пункт Properties. Откроется окно "TCP/IP Properties" (см. рисунок 16).

Рисунок 16 -- Пример настройки протокола для удаленного доступа к БД
-
В открывшемся окне перейдите на вкладку IP Adresses и в блоке параметров IPAll укажите TCP порт для данного источника: "1433".
- Нажмите кнопку OK.
-
Перезапустите службу MS SQL Server:
-
запустите управление службами (см. рисунок 17);

Рисунок 17 -- Перезапуск службы MS SQL Server
-
выберите службу SQL Server c запущенным экземпляром БД (SQLEXPRESS) и нажмите кнопку Перезапустить службу.
-
Шаг 4. Настройте профиль сбора для данного источника
Для настройки профиля сбора выполните следующие действия:
-
Начните процесс настройки профиля сбора для источника 1520 Microsoft SQL Server ODBC и выберите модуль odbc_input (см. рисунок 18):

Рисунок 18 -- Создание профиля сбора. Модуль "odbc_input"
-
В поле SQL запрос укажите запрос, которым будут запрашиваться события из системных журналов. Пример запроса:
sql: > SELECT CAST(DATEDIFF_BIG(ns, '1970-01-01 00:00:00.0000000', event_time) AS BIGINT) as epoch, event_time, action_id, succeeded, session_id, class_type, session_server_principal_name, server_principal_name, server_principal_sid, database_principal_name, target_server_principal_name, target_server_principal_sid, target_database_principal_name, server_instance_name, database_name, schema_name, object_name, statement, additional_information, transaction_id FROM fn_get_audit_file ('C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\*.sqlaudit', default, default) WHERE CAST(DATEDIFF_BIG(ns, '1970-01-01 00:00:00.0000000', event_time) AS BIGINT) > ?Где
('C:\Program Files\Microsoft SQL Server\MSSQL13.SQLEXPRESS\MSSQL\DATA\*.sqlaudit', default, default)путь к файлам журнала. Указанные в строке данные, должны совпадать с путем фактического размещения файлов журналов. -
В поле Поле, которое будет использоваться как закладка для сохранения позиции укажите значение epoch, оно используется для сохранения позиции вычитки между запросами.
-
В блоке Данные для подключения выполните следующие настройки:
- в поле Драйвер для подключения выберите значение MS SQL;
- остальные поля заполните соответствующими сетевыми и учетными данными для подключения.
-
Сохраните профиль сбора.
Шаг 5. Включите источник Microsoft-SQL-Server.
Oracle Database. Audit
Характеристики источника в Платформе Радар:
| Характеристика | Значение |
|---|---|
| Название | Oracle-Database |
| Номер (Порт) | 2770 |
| Вендор | Oracle |
| Тип | Database |
| Профиль сбора | tcp_input |
Для настройки источника выполните следующие действия:
-
Подключитесь к СУБД локально с привилегиями
sysdba:# sqlplus / as sysdba -
Выполните команду:
# alter session set "_ORACLE_SCRIPT"=true -
Установите журнал аудита XML:
# ALTER SYSTEM SET audit_trail=XML SCOPE=SPFILE -
Выключите и включите СУБД:
# Shutdown # Startup -
Проверьте параметры аудита командой:
# show parameter auditУбедитесь, что
audit_trailпринял значение XML. Запишите значениеaudit_file_dest, оно понадобится при настройке отправки сообщений в профиле сбора для параметра Файл (File). -
Выполните команду:
# ALTER SYSTEM SET audit_sys_operations=true SCOPE=SPFILE -
Установите важность событий командой:
# alter system set audit_syslog_level='local5.info' scope=spfile sid='*' -
Выполните последовательно команды:
# Shutdown # Startup # Show parameter auditНа выходе должны появиться сообщения (см. рисунок 19).

Рисунок 19 -- Вывод сообщений
-
Настройте параметры аудита:
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; -
В каталоге
/etc/rsyslog.d/создайте конфигурационный файлoracle_audit.confи укажите в нем следующие настройки:module(load="imfile") input( type="imfile" File="<Значение из audit_file_dest из п.5>/*.xml" Tag="oracle_audit" Facility="local7" Severity="info" PersistStateInterval="100" endmsg.regex="</AuditRecord>$" ) local7.* /var/log/oracle_audit.log local7.* @@<IP-адрес агента сбора лог-коллектора>:<порт>Где:
local7- необходимое значение facility;@@- передача данных по протоколу TCP;<IP-адрес агента сбора лог-коллектора>- IP-адрес, на котором развернут агент сбора лог-коллектора;<порт>- порт, по которому агент сбора лог-коллектора будет принимать события. Должен совпадать со значением, указанным в настройках соответствующего профиля сбора.
-
Сохраните изменения и перезапустите службу
rsyslog:# systemctl restart rsyslog.service -
Включите источник Oracle-Database.
Oracle Database. NetListener
Характеристики источника в Платформе Радар:
| Характеристика | Значение |
|---|---|
| Название | Oracle-Database-NetListener |
| Номер (Порт) | 2771 |
| Вендор | Oracle |
| Тип | Database |
| Профиль сбора | tcp_input |
Для настройки источника выполните следующие действия:
-
Запустите LSNRCTL командой:
# LSNRCTL -
Определите экземпляр используемой службы Oracle NetListener командой:
# show current_listenerПосле выполнения команды отобразится имя экземпляра СУБД.
-
Для смены используемого экземпляра используется команда:
# set current_listener -
Проверьте статус журналирования:
# show log_statusЕсли для параметра
log_statusуказано OFF, то включите журналирование:# set log_status on save_config reload -
В каталоге
/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- порт, по которому агент сбора лог-коллектора будет принимать события. Должен совпадать со значением, указанным в настройках соответствующего профиля сбора.
-
Сохраните изменения и перезапустите службу
rsyslog:# systemctl restart rsyslog.service -
Включите источник Oracle-Database-NetListener.
Oracle MySQL
Характеристики источника в Платформе Радар:
| Характеристика | Значение |
|---|---|
| Название | Oracle-MySQL |
| Номер (Порт) | 4005 |
| Вендор | Oracle |
| Тип | MySQL |
| Профиль сбора | tcp_input |
Для настройки источника выполните следующие действия:
-
Установите модуль аудита 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 -
В конфигурационном файле
/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 -
Перезапустите сервис MySQL:
service mysql restart -
В каталоге
/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- порт, по которому агент сбора лог-коллектора будет принимать события. Должен совпадать со значением, указанным в настройках соответствующего профиля сбора.
-
Сохраните изменения и перезапустите службу
rsyslog:# systemctl restart rsyslog.service -
Включите источник Oracle-MySQL.
PostgreSQL
Характеристики источника в Платформе Радар:
| Характеристика | Значение |
|---|---|
| Название | PostgreSQL |
| Номер (Порт) | 4000 |
| Вендор | PostgreSQL |
| Тип | PostgreSQL |
| Профиль сбора | udp_input |
Для настройки источника выполните следующие действия:
-
Узнайте расположение конфигурационного файла
postgresql.confна сервере:# psql -U <username> -c 'SHOW config_file'Пример ответа:
/var/app/data/postgresql.conf -
В конфигурационный файл
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' -
Перезапустите службу
postgresql. -
В каталоге
/etc/rsyslog.d/создайте конфигурационный файл10-pgsql.confи укажите в нем следующие настройки:if $programname == 'postgres' then @<IP-адрес агента сбора лог-коллектора>:portГде:
@- передача данных по протоколу UDP;<IP-адрес агента сбора лог-коллектора>- IP-адрес агента сбора лог-коллектора;port- порт, по которому агент сбора лог-коллектора будет принимать события. Должен совпадать со значением, указанным в настройках соответствующего профиля сбора.
-
Сохраните изменения и перезапустите службу
rsyslog:# systemctl restart rsyslog.service -
Включите источник PostgreSQL.