User Tools

Site Tools


tssltd:дополнительные_возможности_логирования

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tssltd:дополнительные_возможности_логирования [2023/05/26 17:47] i.sharapovtssltd:дополнительные_возможности_логирования [2023/10/09 13:18] (current) n.ganenkov
Line 1: Line 1:
 [[tssltd:общие_настройки|Вернуться к оглавлению]] [[tssltd:общие_настройки|Вернуться к оглавлению]]
  
-=== Общая настройка протокола Rsyslog ===+==== Общая настройка протокола Rsyslog ====
  
 <WRAP indent> <WRAP indent>
-На устройстве <wrap em>МКСЗ Diamond VPN/FW</wrap> поддерживается возможность выгрузки отдельных журналов событий (файлов) на удаленный сервер по протоколу rsyslog.+На устройстве <wrap em>МКСЗ Diamond VPN/FW</wrap> поддерживается возможность выгрузки отдельных журналов событий (файлов) на удаленный сервер по протоколу **rsyslog**.
  
 Для активации этой функции необходимо произвести предварительную настройку. Необходимо подключиться к устройству по протоколу ssh и перейти в папку назначения с помощью команды «**/etc/rsyslog.d**». Далее с помощью команды «**nano file_name.conf**» необходимо создать конфигурационный файл. В конфигурационной файле необходимо задать параметры журналирования, сетевой адрес сервера, сетевой протокол, файл с логами и другие параметры. Механизм журналирования позволяет осуществлять фильтрацию нужных событий по ключевым слом перед отправкой на центральны сервер. Ниже мы рассмотрим различные примеры конфигураций с описание задачи, которую необходимо решить. Для активации этой функции необходимо произвести предварительную настройку. Необходимо подключиться к устройству по протоколу ssh и перейти в папку назначения с помощью команды «**/etc/rsyslog.d**». Далее с помощью команды «**nano file_name.conf**» необходимо создать конфигурационный файл. В конфигурационной файле необходимо задать параметры журналирования, сетевой адрес сервера, сетевой протокол, файл с логами и другие параметры. Механизм журналирования позволяет осуществлять фильтрацию нужных событий по ключевым слом перед отправкой на центральны сервер. Ниже мы рассмотрим различные примеры конфигураций с описание задачи, которую необходимо решить.
  
-Конфигурацию для протокола Rsyslog можно задать как в одном файле, так и в нескольких. При старте основного процесса все конфигруации из файлов будут считаны и применены. +Конфигурацию для протокола **Rsyslog** можно задать как в одном файле, так и в нескольких. При старте основного процесса все конфигурации из файлов будут считаны и применены. 
  
-=== Запись событий из динамических файлов в журналы событий на устройстве ===+</WRAP>
  
 +==== Запись событий из динамических файлов в журналы событий на устройстве ====
 +
 +<WRAP indent>
 Для задания нужной конфигурации необходимо открыть на редактирование файл с настройками с помощью команды «**nano /etc/rsyslogd.d/<file_name>.conf**». В конфигурационном файле задать следующие настройки. Для задания нужной конфигурации необходимо открыть на редактирование файл с настройками с помощью команды «**nano /etc/rsyslogd.d/<file_name>.conf**». В конфигурационном файле задать следующие настройки.
  
Line 30: Line 33:
  
  
 +</WRAP>
 +
 +==== Отправка событий из динамических файлов на удаленных сервер ====
 +
 +<WRAP indent>
 +Для задания нужной конфигурации необходимо открыть на редактирование файл с настройками с помощью команды «**nano /etc/rsyslogd.d/<file_name>.conf**». В конфигурационном файле задать следующие настройки.
 +
 +<code>
 +module(load="imfile"            
 +
 +global (
 +  workDirectory="/media/storage/logs/"
 +)
 +input(type="imfile" File="/var/log/messages" Tag="messages" ruleset="promtail")
 +ruleset(name="promtail"){
 +   if $msg contains 'eigrpd' then action (type="omfwd" protocol="udp" target="10.34.17.88" port="514" Template="RSYSLOG_SyslogProtocol23Format")
 +   if $msg contains 'bgpd' then action (type="omfwd" protocol="udp" target="10.34.17.88" port="514" Template="RSYSLOG_SyslogProtocol23Format")
 +}
 +</code>
 +
 +В данном примере, мы анализируем поступающую информацию из файла  «**/var/log/messages**» и применяем к сообщениям фильтры по ключевым словам «**eigrpd**», «**bgpd**». События для ключа «**eigrpd**» и «**bgpd**» отправляем по протоколу «**udp**» на удаленный сервер с сетевым адресом «**10.34.17.88**» на порт «**514**».
 +</WRAP>
 +
 +==== Отправка событий из динамических файлов на несколько удаленных сервер ====
 +
 +<WRAP indent>
 +Для задания нужной конфигурации необходимо открыть на редактирование файл с настройками с помощью команды «**nano /etc/rsyslogd.d/<file_name>.conf**». В конфигурационном файле задать следующие настройки.
 +
 +<code>
 +module(load="imfile"            
 +
 +global (
 +  workDirectory="/media/storage/logs/"
 +)
 +input(type="imfile" File="/var/log/messages" Tag="messages" ruleset="promtail")
 +ruleset(name="promtail"){
 +   if $msg contains 'eigrpd' then action (type="omfwd" protocol="udp" target="10.34.17.88" port="514" Template="RSYSLOG_SyslogProtocol23Format")
 +   if $msg contains 'eigrpd' then action (type="omfwd" protocol="udp" target="10.34.17.90" port="514" Template="RSYSLOG_SyslogProtocol23Format")
 +}
 +</code>
 +
 +В данном примере, мы анализируем поступающую информацию из файла  «**/var/log/messages**» и применяем к сообщениям фильтры по ключевым словам «**eigrpd**». События для ключа «**eigrpd**» отправляем по протоколу «**udp**» на два удаленных сервера с сетевым адресом «**10.34.17.88**» на порт «**514**» и «**10.34.17.90**» на порт «**514**».
 +</WRAP>
 +
 +==== Дополнительные параметры обработки и отправки журналов событий. ====
 +
 +<WRAP indent>
 +
 +Протокол **rsyslog** поддерживает возможность фильтровать информацию по заданным критериям для последующей отправки на удаленный сервер. Общий форма сообщения:
 +<code>if [$свойство] [условие] then [action]</code>
 +
 +Перечень **свойств**, которые можно задать:
 +  * **msg** - сообщение syslog
 +  * **hostname** - от кого сообщение
 +  * **syslogtag** - TAG сообщения
 +  * **programname** -  название процесса, 
 +  * **pri** - приоритет сообщения
 +  * **syslogfacility** - syslog facility как число
 +  * **syslogfacility-text** - facility в текстовом формате
 +  * **syslogseverity** - важность
 +  * **syslogseverity-text** - важность в текстовом формате
 +
 +Перечень **условий**, которые можно использовать:
 +  * **contains** - содержит
 +  * **isequal** - равно
 +  * **startswitch** - начинается с 
 +  * **regex** - регулярное выражение
 +
 +Условия для поиска можно комбинировать с помощью логических операций or/and/not, например:
 +
 +<code>
 +  * if $syslogfacility-text == 'local0' and $msg startswith 'DEVNAME' and ($msg contains 'error1' or $msg contains 'error0') then /media/storage/logs/<file_log_name>.log
 +  * if $syslogfacility-text == 'local0' and $msg startswith 'DEVNAME' and not ($msg contains 'error1' or $msg contains 'error0') then /var/log/somelog
 +</code>
 +
 +Возможные категории для логов перечислены в __//табл. 9.f.1 и 9.f.2//__.
 + 
 +<WRAP center round box 100%>
 +
 +__//Табл. 9.f.1. Возможные категории для логов (**facility**)//__
 +
 +^№ ^Категория         ^Описание^
 +|0 |kern                 |Сообщения, отправляемые ядром|
 +|1 |user                 |Пользовательские программы|
 +|2 |mail                 |Почта|
 +|3 |daemon                 |Сервисы (демоны)|
 +|4 |auth                 |Безопасность/вход в систему/аутентификация|
 +|5 |syslog                 |Сообщения от syslog|
 +|6 |lpr                 |Логи печати|
 +|7 |news                 |Новостные группы (usenet)|
 +|8 |uucp                 |Unix-to-Unix CoPy (копирование файлов между компьютерами)|
 +|9 |cron                 |Планировщик заданий|
 +|10 |authpriv         |Безопасность/вход в систему/аутентификация - защищенный режим|
 +|11 |ftp                 |Логи при передачи данных по FTP|
 +|12 |ntp                 |Лог службы синхронизации времени (существует не везде)|
 +|13 |security, log audit |Журнал аудита (существует не везде)|
 +|14 |console, log alert |Сообщения, отправляемые в консоль (существует не везде)|
 +|15-22 |local0 - local7 |Зарезервированы для локального использования.|
  
  
-=== Отправка событий из динамических файлов на удаленных сервер === +__//Табл. 9.f.2. Возможные категории для логов (**severity**)//__
-=== Отправка событий из динамических файлов на несколько удаленных сервер === +
-=== Отправка событий из файла одного из журналов событий. ===+
  
 +^№ ^Уровень ^Расшифровка^
 +|0 |emerg         |Система не работает (PANIC)|
 +|1 |alert         |Серьезная проблема, требующая внимания|
 +|2 |crit         |Критическая ошибка|
 +|3 |err         |Ошибка (ERROR)|
 +|4 |warning |Предупреждение (WARN)|
 +|5 |notice         |Важное информационное сообщение|
 +|6 |info         |Информационное сообщение|
 +|7 |debug         |Отладочная информация|
 +</WRAP>
  
 </WRAP> </WRAP>
  
 [[tssltd:общие_настройки|Вернуться к оглавлению]] [[tssltd:общие_настройки|Вернуться к оглавлению]]
tssltd/дополнительные_возможности_логирования.1685112424.txt.gz · Last modified: 2023/05/26 17:47 by i.sharapov

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki