Настройка отправки и получения уведомлений через «rsyslog»

Настройка отправки и получения уведомлений через rsyslog состоит из следующих этапов:

  • Настройка отправки и получения уведомлений на СХД.
  • Настройка получения уведомлений на Linux-системе и отправка тестового сообщения.

Сообщения с уведомлениями отправляются в формате CEF.

CEF (англ. аббр. для «Common Event Format», «общий формат событий») – независимый от поставщика устройств формат для логирования данных из устройств и приложений. Формат был разработан специально для решений по управлению информацией и событиями безопасности (англ. «Security Information and Event Management», англ. аббр. «SIEM»).

Формат сообщения:

CEF:Version|Device Vendor|Device Product|Device Version|Signature ID|Name|Severity|Extension

Пример сообщения в формате CEF:

May 27 15:38:43.218289 0OY5CC rdnotify[81421]: CEF:0|Raidix||5.3|100|system.state|1|src=10.78.188.121 msg=The system is in NORMAL state. spt=514 shost=0OY5CC
May 16 20:01:55.0 alex1 rdnotify[35638]: CEF:0|YADRO|YADRO TATLIN.FLEX|5.3|100|raid dimec|5|msg=RAID initialization is running. spt=514 src=10.78.188.210 shost=alex1

Описание формата CEF:

Поле Назначение

CEF:Version

Обязательный префикс с версией CEF.

Device Vendor

Имя вендора продукта.

Device Product

Имя продукта.

В RAIDIX 5.3.0 значение всегда пустое.

Значение всегда Raidix RAIDIX.

Device Version

Версия ПО RAIDIX.

Signature ID

Уникальный идентификатор типа события.

В RAIDIX 5.3.0 значение всегда 100.

Name

Тип объекта и, если применимо, имя объекта события.

Severity

Важность события.

В зависимости от типа уведомления:

  • 0 – уведомления с типом «информация».
  • 5 – уведомления с типом «предупреждения».
  • 10 – уведомления с типом «ошибки».

Extension

Дополнительные поля:

  • msg – текст уведомления.
  • spt – порт источника события (контроллера СХД).
  • src – IP-адрес источника события (контроллера СХД).
  • shost – имя устройства источника (контроллера СХД).

Особенности и ограничения

Учитывайте следующие особенности и ограничения отправки и получения уведомлений с СХД через «rsyslog»:

  • С СХД отправляются все уведомления без возможности фильтрации по типу и объекту.
  • Отправка доступна только для одной принимающей системы.
  • В DC-системе настройки на одном контроллере автоматически применяются на втором.
  • Если «rsyslog» настроен на контроллере, не входящем в DC, после включения DC-режима настройте «rsyslog» на другом контроллере вручную.

Настройка отправки и получения уведомлений на СХД

Выполните команду
$ rdcli notify syslog profile modify [-a <remote_address>] [-po <remote_port>] [-pr <remote_protocol>] [-e 1]

где

  • <remote_address> – IP-адрес принимающей системы;
  • <remote_port> – номер порта принимающей системы;
  • <remote_protocol> – транспортный протокол.
  • -e 1 – включение отправки уведомлений.

Настройка получения уведомлений на Linux-системе и отправка тестового сообщения

: Для настройки принимающей системы необходимы права root.
  1. Создайте файл /etc/rsyslog.d/some_name.conf и пропишите настройки сервиса «rsyslog» для получения логов с СХД.

    Пример конфигурации для протокола TCP с сохранением всех уведомлений, отправляемых СХД, в файл /var/log/remote-CEF.log:

    module(load="imtcp" MaxSessions="500")
    input(type="imtcp" port="514" ruleset="remote")
    template(name="RemoteCEF" type="string" string="/var/log/remote-CEF.log")
    ruleset(name="remote") {
    if $msg startswith " CEF" then {
    action(type="omfile" dynaFile="RemoteCEF") stop
    }
    action(type="omfile" dynaFile="RemoteHost") stop
    }

    Описание параметров, используемых в примерах, см. в секции Параметры конфигурации «rsyslog». Полная информация о сервисе «rsyslog» доступна на официальном сайте rsyslog.

  2. Перезапустите сервис rsyslog:

    # systemctl restart rsyslog.service

Чтобы отправить тестовое уведомление, после настройки СХД и принимающей стороны, на контроллере выполните

$ rdcli notify syslog test

Пример тестового уведомления:

Jun 19 17:21:59.098126 0OY5CC rdcmd[2395939]: CEF:0|Raidix||5.3|100|test|10|src=10.78.188.121 spt=514 shost=0OY5CC msg=Test CEF message
Jun 19 17:21:59.098126 0OY5CC rdcmd[2395939]: CEF:0|Рэйдикс|Рэйдикс RAIDIX|5.3|100|test|10|src=10.78.188.121 spt=514 shost=0OY5CC msg=Test CEF message

Параметры конфигурации «rsyslog»

В секции представлено описание параметров конфигурационного файла «rsyslog», используемых в примерах. Полная информация о сервисе «rsyslog» доступна на официальном сайте rsyslog.

Параметр Значение Описание

module

load

Модуль для загрузки сообщений.

imtcp – обеспечивает отправку syslog-сообщений через TCP.

imudp – обеспечивает отправку syslog-сообщений через UDP.

MaxSessions

Максимальное количество сессий для модуля TCP.

input

type

Тип модуля входных параметров.

port

Порт сервера.

ruleset

Имя используемого набора правил.

template

name

Имя шаблона.

type

Тип шаблона.

string – содержит строку с шаблоном, который будет применён.

string

Текст строки для типа шаблона «string».

ruleset

name

Имя набора правил.