Kaspersky Security Center 15.1 Linux

Экспорт событий напрямую из базы данных

Вы можете извлекать события напрямую из базы данных Kaspersky Security Center, не используя интерфейс Kaspersky Security Center Linux. Можно создавать запросы непосредственно к публичным представлениям и извлекать из них данные о событиях или создавать собственные представления на базе существующих публичных представлений и обращаться к ним для получения требуемых данных.

Публичные представления

Для вашего удобства в базе данных Kaspersky Security Center Linux предусмотрен набор публичных представлений. Описание публичных представлений приведено в документе klakdb.chm.

Публичное представление v_akpub_ev_event содержит набор полей, соответствующих параметрам событий в базе данных. В документе klakdb.chm также содержится информация о публичных представлениях, относящихся к другим объектам Kaspersky Security Center Linux, например, устройствам, приложениям, пользователям. Вы можете использовать эту информацию при создании запросов.

В этом разделе приведены инструкции по выполнению SQL-запроса с помощью утилиты klsql2, а также пример такого запроса.

Вы также можете использовать любые другие приложения для работы с базами данных для создания SQL-запросов и представлений баз данных. Информация о том, как посмотреть параметры подключения к базе данных Kaspersky Security Center Linux, например, имя инстанса и имя базы данных, приведена в соответствующем разделе.

В этом разделе

Выполнение SQL-запроса с помощью утилиты klsql2

Пример SQL-запроса, созданного с помощью утилиты klsql2

Просмотр имени базы данных Kaspersky Security Center Linux

См. также:

Настройка экспорта событий в SIEM-системы

В начало
[Topic 151344]

Выполнение SQL-запроса с помощью утилиты klsql2

В этой статье приведены инструкции по использованию утилиты klsql2, а также по выполнению SQL-запроса с использованием этой утилиты. Используйте версию утилиты klsql2, которая входит в вашу установленную версию Kaspersky Security Center Linux.

Чтобы использовать утилиту klsql2:

  1. Перейдите в директорию, в которой установлен Сервер администрирования. По умолчанию задан путь /opt/kaspersky/ksc64/sbin.
  2. В этой директории создайте пустой файл src.sql.
  3. Откройте файл src.sql с помощью любого текстового редактора.
  4. В файле src.sql введите требуемый SQL-запрос и сохраните файл.
  5. На устройстве, на котором установлен Сервер администрирования, в командной строке введите следующую команду для выполнения SQL-запроса из файла src.sql и сохранения результатов в файл result.xml:

    sudo ./klsql2 -i src.sql -u <имя пользователя> -p <пароль> -o result.xml

    где <имя пользователя> и <пароль> являются учетными данными учетной записи пользователя, имеющего доступ к базе данных.

  6. При необходимости введите имя учетной записи и пароль пользователя, имеющего доступ к базе данных.
  7. Откройте созданный файл result.xml и посмотрите результаты выполнения SQL-запроса.

Вы можете изменить файл src.sql и создавать в нем любые SQL-запросы к публичным представлениям. Затем с помощью команды в командной строке можно запустить запрос и сохранить результаты в файл.

См. также

Настройка экспорта событий в SIEM-системы

В начало
[Topic 151343]

Пример SQL-запроса, созданного с помощью утилиты klsql2

В этом разделе приведен пример SQL-запроса, выполненного с помощью утилиты klsql2.

Следующие примеры показывают, как получить список событий, зарегистрированных на устройствах пользователей за последние 7 дней, и отсортировать их по времени возникновения, самые недавние события отображаются первыми.

Пример для Microsoft SQL Server:

SELECT

  e.nId, /* идентификатор события */

  e.tmRiseTime, /* время возникновения события */

  e.strEventType, /* внутреннее имя типа события */

  e.wstrEventTypeDisplayName, /* отображаемое имя события */

  e.wstrDescription, /* отображаемое описание события */

  e.wstrGroupName, /* имя группы устройств */

  h.wstrDisplayName, /* отображаемое имя устройства, на котором произошло событие */

  CAST(((h.nIp / 16777216) & 255) AS varchar(4)) + '.' +

  CAST(((h.nIp / 65536) & 255) AS varchar(4)) + '.' +

  CAST(((h.nIp / 256) & 255) AS varchar(4)) + '.' +

  CAST(((h.nIp) & 255) AS varchar(4)) as strIp /* IP-адрес устройства, на котором произошло событие */

FROM v_akpub_ev_event e

  INNER JOIN v_akpub_host h ON h.nId=e.nHostId

WHERE e.tmRiseTime>=DATEADD(Day, -7, GETUTCDATE())

ORDER BY e.tmRiseTime DESC

Пример для PostgreSQL:

SELECT

  "e"."nId", /* идентификатор события */

  "e"."tmRiseTime", /* время возникновения события */

  "e"."strEventType", /* внутреннее имя типа события */

  "e"."wstrEventTypeDisplayName", /* отображаемое имя события */

  "e"."wstrDescription", /* отображаемое описание события */

  "e"."wstrGroupName", /* отображаемое описание события */

  "h"."wstrDisplayName", /* отображаемое имя устройства, на котором произошло событие */

  (

    CAST((("h"."nIp" / 16777216 )& 255 ) AS VARCHAR(4)) || '.' ||

    CAST((("h"."nIp" / 65536 )& 255 ) AS VARCHAR(4)) || '.' ||

    CAST((("h"."nIp" / 256 )& 255 ) AS VARCHAR(4)) || '.' ||

    CAST((("h"."nIp" )& 255 ) AS VARCHAR(4))

  ) AS "strIp" /* IP-адрес устройства, на котором произошло событие */

FROM "v_akpub_ev_event" AS "e"

  INNER JOIN "v_akpub_host" AS "h" ON "h"."nId" = "e"."nHostId"

WHERE "e"."tmRiseTime" >= NOW() AT TIME ZONE 'utc' + make_interval(days => CAST(-7 AS INT))

ORDER BY "e"."tmRiseTime" DESC ;

Пример для MySQL или MariaDB:

SELECT

  `e`.`nId`, /* идентификатор события */

  `e`.`tmRiseTime`, /* время возникновения события */

  `e`.`strEventType`, /* внутреннее имя типа события */

  `e`.`wstrEventTypeDisplayName`, /* отображаемое имя события */

  `e`.`wstrDescription`, /* отображаемое описание события */

  `e`.`wstrGroupName`, /* имя группы устройств */

  `h`.`wstrDisplayName`, /* отображаемое имя устройства, на котором произошло событие */

  CONCAT(

    LEFT(CAST(((`h`.`nIp` DIV 1677721) & 255) AS CHAR), 4), '.',

    LEFT(CAST(((`h`.`nIp` DIV 65536) & 255) AS CHAR), 4), '.',

    LEFT(CAST(((`h`.`nIp` DIV 256) & 255) AS CHAR), 4), '.',

    LEFT(CAST(((`h`.`nIp`) & 255) AS CHAR), 4)

  ) AS `strIp` /* IP-адрес устройства, на котором произошло событие */

FROM `v_akpub_ev_event` AS `e`

  INNER JOIN `v_akpub_host` AS `h` ON `h`.`nId` = `e`.`nHostId`

WHERE `e`.`tmRiseTime` >= ADDDATE( UTC_TIMESTAMP( ) , INTERVAL -7 DAY)

ORDER BY `e`.`tmRiseTime` DESC ;

См. также:

Настройка экспорта событий в SIEM-системы

В начало
[Topic 151338]

Просмотр имени базы данных Kaspersky Security Center Linux

Для доступа к базе данных Kaspersky Security Center Linux с помощью MySQL или MariaDB необходимо знать имя базы данных, чтобы иметь возможность подключиться к ней из редактора скриптов SQL.

Чтобы просмотреть имя базы данных Kaspersky Security Center Linux:

  1. В главном меню нажмите на значок параметров () рядом с именем требуемого Сервера администрирования.

    Откроется окно свойств Сервера администрирования.

  2. На вкладке Общие выберите раздел Информация об используемой базе данных.

Имя базы данных указано в поле Имя базы данных. Используйте это имя базы данных для подключения и обращения к базе данных в ваших SQL-запросах.

См. также:

Настройка экспорта событий в SIEM-системы

В начало
[Topic 228689]