Настройка rsyslog
В главе представлено описание настроек отправки и получения логов и уведомлений через «rsyslog». Вам доступны следующие операции:
- Настройка отправки и получения логов на СХД;
- Настройка отправки и получения уведомлений на СХД;
- Настройка получения логов и уведомлений на Linux-системе.
«rsyslog» – сервис для Linux-систем, предназначенный для управления журналами событий (далее – логами), в том числе уведомлений. Сервис поддерживает приём данных по протоколу Syslog из разных источников, их фильтрацию, преобразование и отправку.
Syslog – протокол для отправки и получения сообщений между устройствами или приложениями по сети по протоколам UDP и TCP. Структура сообщений в Syslog включает приоритет, временную метку, имя хоста, имя приложения, идентификатор процесса и текст сообщения.
Уведомления от СХД передаются в формате CEF. CEF (англ. аббр. «Common Event Format», «общий формат событий») – независимый от поставщика устройств формат для логирования данных из устройств и приложений. Формат был разработан специально для решений по управлению информацией и событиями безопасности (англ. «Security Information and Event Management», англ. аббр. «SIEM»).
Структура CEF:
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.1|100|system.state|10|src=10.78.188.121 msg=The system is in NORMAL state. spt=514 shost=0OY5CC
Описание структуры CEF:
| Поле | Назначение |
|---|---|
CEF:Version |
Обязательный префикс с версией CEF. |
Device Vendor |
Имя вендора продукта. |
Device Product |
Имя продукта. В RAIDIX 5.3.1 значение всегда пустое. |
Device Version |
Версия ПО RAIDIX. |
Signature ID |
Уникальный идентификатор типа события. В RAIDIX 5.3.1 значение всегда 100. |
Name |
Тип объекта и, если применимо, имя объекта события. |
Severity |
Важность события. В зависимости от типа уведомления:
|
Extension |
Дополнительные поля:
|
Особенности и ограничения
- Для отправки с СХД доступны логи только уровня info.
- С СХД отправляются все уведомления без возможности фильтрации по типу и объекту.
- Отправка доступна только для одной принимающей системы.
- В DC-системе настройки на одном контроллере автоматически применяются на втором.
- Если «rsyslog» настроен на контроллере, не входящем в DC, после включения DC-режима настройте «rsyslog» на другом контроллере вручную.
Настройка отправки и получения логов на СХД
Выполните команду
$ rdcli param logger modify [-ra <remote_address>] [-rpo <remote_port>] [-rpr <remote_protocol>] [-re 1]
где
<remote_address>– IP-адрес принимающей системы;<remote_port>– номер порта принимающей системы;<remote_protocol>– транспортный протокол.-re 1– включение отправки логов.
Настройка отправки и получения уведомлений на СХД
Выполните команду
$ 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-системе
На принимающей Linux-системе конфигурация «rsyslog» едина для логов и уведомлений.
-
Создайте файл /etc/rsyslog.d/some_name.conf и пропишите настройки сервиса «rsyslog» для получения логов и уведомлений с СХД.
Пример конфигурации для протокола TCP с сохранением уведомлений в файл /var/log/remote-CEF.log и логов в файл /var/log/remote-%HOSTNAME%/%PROGRAMNAME%.log:
module(load="imtcp" MaxSessions="500") input(type="imtcp" port="514" ruleset="remote") template(name="RemoteCEF" type="string" string="/var/log/remote-CEF.log") template(name="RemoteHost" type="string" string="/var/log/remote-%HOSTNAME%/%PROGRAMNAME%.log") ruleset(name="remote") { if $msg startswith " CEF" then { action(type="omfile" dynaFile="RemoteCEF") stop } action(type="omfile" dynaFile="RemoteHost") stop }: Для настройки через UDP замените в конфигурации модульimtcpнаimudp.Описание параметров, используемых в примерах, см. в разделе Параметры конфигурации «rsyslog». Полная информация о сервисе «rsyslog» доступна на официальном сайте rsyslog.
-
Перезапустите сервис rsyslog:
# systemctl restart rsyslog.service
Чтобы отправить тестовое уведомление, после настройки СХД и принимающей стороны, на контроллере выполните
$ rdcli notify syslog test
Пример тестового уведомления:
Jun 19 17:21:59.098126 0OY5CC rdcmd[2395939]: CEF:0|Raidix||5.3.1|100|test|10|src=10.78.188.121 spt=514 shost=0OY5CC msg=Test CEF message
Пример сортировки получаемых логов c DC-системы с контроллерами «pro10» и «pro9»:
# ls /var/log/remote-pro10
attomdnsd.log kernel.log login-hook.log rdbroker.log rdconfig.log rdmetadata.log rdscan.alua_scst_watch.log rdscan.net_watch.log rdscan.raid_watch.log rsyslogd.log sshd.log
crond.log ledmon.log multipath.log rdcmd.log rdhb.log rdnotify.log rdscan.log rdscan.nvmeof_watch.log rdstat.log smartd.log sudo.log
# ls /var/log/remote-pro9/
crond.log kernel.log rdbroker.log rdhb.log rdscan.alua_scst_watch.log rdscan.mpath_watch.log rdscan.nvme_fabrics_subsystem_wa.log rdscan.raid_watch.log run-parts.log sudo.log
CROND.log multipath.log rdcmd.log rdmetadata.log rdscan.drive_watch.log rdscan.net_watch.log rdscan.nvmeof_watch.log rsyslogd.log sshd.log
Параметры конфигурации «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 |
Имя набора правил. |