Подключение с помощью SQL-коллектора

Предварительные условия:

  • на узле-источнике сервис-источник записывает журналы в одну из следующих СУБД:

    • PostgreSQL

    • MySQL

    • SQLite

    • ClickHouse

    • Oracle

  • отсутствуют какие-либо ограничения по подключению к выбранной СУБД на узле-источнике событий ИБ с сервера KOMRAD

  • имеется информация о структуре базы данных и таблице, в которую записываются события, а также имеется подготовленный пользователь с необходимыми правами

Подключение нового SQL-коллектора

Предварительные условия:

Для установки SQL-коллектора на определенный узел, необходимо:

  1. На узле создать директорию, в которую необходимо переместить deb-пакет komrad-sql-collector*.deb из дистрибутива KOMRAD

  2. Установить из папки komrad-sql-collector командой:

    sudo dpkg -i ./komrad-sql-collector*.deb
  3. Открыть файл komrad-sql-collector.yaml командой:

    sudo nano /etc/echelon/komrad/komrad-sql-collector.yaml
  4. Отредактировать параметр bus-url, задав IP-адрес сервера KOMRAD:

    bus-url: nats://IP_ KOMRAD:3490
  5. Сохранить файл и перезагрузить sql-collector командой:

    sudo systemctl restart komrad-sql-collector.service
  6. Новый SQL-коллектор отобразится в списке коллекторов в веб-интерфейсе

Подключение новых источников событий

Предварительные условия:

  • Необходимо узнать IP-адрес, порт, а также имя пользователя и пароль к базе данных, с которой будет проводиться сбор событий

  • Отсутствуют какие-либо ограничения на передачу трафика по выбранному порту между источником событий ИБ и сервером KOMRAD

Расположение: Администрирование → Настройки коллекторов → Коллекторы → SQL

Действия:

  1. Кликнуть по SQL-коллектору

  2. При необходимости задать имя коллектору c помощью кнопки «Редактировать» и сохранить изменения

  3. На вкладке «Источники» нажать на кнопку «Добавить». Справа появится форма для создания нового источника для SQL-коллектора

  4. Выбрать «Шаблон» из доступных

  5. Заполнить поле «Название»

  6. Отредактировать «Строка подключения» для вашего источника (данные для заполнения указаны в предварительных условиях, см. выше)

  7. Выбрать тип базы данных

  8. При необходимости можно изменить инициализирующий и регулярный запросы

  9. Записать название поля-счётчика, по которому будет производится проверка появления новых записей в БД

  10. Выбрать необходимую частоту запросов к БД (crontab time format)

  11. Включить коллектор, если он был выключен или перезагрузите, если он был включен

  12. Нажать на «Проверить», если проверка прошла успешно, т.е. в графическом интерфейсе отобразилось событие информационной безопасности, то нажать на кнопку «Сохранить»

Удаление

Удалить sql-коллектор можно с помощью команды:

sudo dpkg -P komrad-sql-collector

Вызова prepare запросов в sql коллекторе

На примере PostgreSQL 11 Astra

Вручную запустить в БД PREPARE

PREPARE au1 as (
  select * from audit.logged_actions where event_id > $1 limit 100
);

Инициализирующий, получаем значение счётчика для последней записи

select * from audit.logged_actions ORDER BY event_id DESC limit 1;

Регулярный

Запускается PREPARED, подставляется значение счётчика который коллектор запоминает после каждого успешного запуска execute au1($1)