#############################
# Основные настройки #
#############################
# Путь до файла лицензии
license_path: "./pgr-agent.lic"
# Централизованное управление
cluster:
url: "http://<IP-адрес Платформы Радар>:9000/cm/api/agent/"
api_key: "<ключ API>"
# Отключить проверку сертификата
skip_verify: false
# Количество попыток переподключения в случае ошибки (по умолчанию 1)
max_try_count: 5
# Время ожидания между переподключениями в секундах (по умолчанию 0)
reconnect_interval_sec: 30
# Контроллер (обязательная секция)
controller:
# Порт модуля, обязательный параметр
port: 48000
# Уровень логирования, если не указан используется указанный в модуле журналирования
log_level: "ERROR"
# Интервал проверки места на диске, по умолчанию 60 секунд
disk_space_check_sec: 60
# Сбор метрик (обязательная секция)
metric_server:
# порт модуля, обязательный параметр
port: 48005
log_level: "ERROR"
# Настройка пути до секретов
# Путь к файлу с секретом
secret_file: "secret"
# Путь к хранилищу секретов
secret_storage: "secret.storage"
# API управление (обязательная секция)
api_server:
# Адрес сетевого интерфейса, используемого лог-коллектором, обязательный параметр
address: ""
# Порт, по которому будет выполняться API-взаимодействие, обязательный параметр
port: 8080
# Таймаут чтения(получение запроса), обязательный параметр
read_timeout: 60
# Таймаут записи(отправка запроса), обязательный параметр
write_timeout: 60
# Время ожидания окончания обработки запроса при получении сигнала на остановку приложения, обязательный параметр
wait: 5
# Включение https
enable_tls: false
# Путь для файла сертификатов, если enable_tls: false параметр не обязательный
cert_file: "certs/server.crt"
# Путь для файла ключей, если enable_tls: false параметр не обязательный
key_file: "certs/server.key"
# Пароль для расшифровки файла ключей, если не указан считаем что файл не зашифрован
cert_key_pass: ""
# Включение проверки клиентского сертификата, обязательный параметр
require_client_cert: true
# Путь до корневого сертификата, обязательный параметр
ca_file: "certs/ca.crt"
# Уровень логирования, если не указан используется указанный в модуле журналирования
log_level: "ERROR"
# Журнал (обязательная секция)
journal:
# Порт модуля, обязательный параметр
port: 48003
# Дефолтный уровень логирования. Возможные значения - DEBUG, INFO, WARN, ERROR. Обязательный параметр
log_level: "WARN"
# Путь к файлу логов, обязательный параметр
log_path: "journal.log"
# Порог ротации файла логов, указывается в мегабайтах, обязательны параметр
rotation_size: 10
# Порог количества файлов истории, если не указано файлы удаляться не будут
max_backups: 10
# Максимальное количество дней для хранения старых файлов журнала на основе метки времени, если не указано файлы удаляться не будут
max_age: 28
###########################################
# Компоненты сбора событий (input) #
###########################################
# Компонент ETW
etw_settings: &etw
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "etw1"
# Поставщик событий. Формат для указания поставщика может быть как имя, так и GUID.
provider: "Windows Kernel Trace"
# Конфигурация ядра
kernel_args: [ "ALPC", "CSWITCH", "DBGPRINT", "DISK_FILE_IO", "DISK_IO", "DISK_IO_INIT", "DISPATCHER",
"DPC", "DRIVER", "FILE_IO", "FILE_IO_INIT", "IMAGE_LOAD", "INTERRUPT", "MEMORY_HARD_FAULTS",
"MEMORY_PAGE_FAULTS", "NETWORK_TCPIP", "NO_SYSCONFIG", "PROCESS", "PROCESS_COUNTERS",
"PROFILE", "REGISTRY", "SPLIT_IO", "SYSTEMCALL", "THREAD", "VAMAP", "VIRTUAL_ALLOC" ]
# Уровень критичности событий, зарегистрированных поставщиком
provider_level: "Critical"
# Уровень журналирования компонента
log_level: "DEBUG"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент Eventlog
event_log_settings: &event_log
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "test_event_log"
# Имя канала, используется если не указан путь к файлу
channel: ["Application"]
# Запрос описывающий тип получаемого события. есть возможность указать
# XPath 1.0 или структурированный XML запрос. Если XPath содержит более 20 параметров, следует
# использовать структурированный XML запрос. Чтобы получить все параметры укажите "*"
query: "*"
# Полный путь к лог файлу
# Поддерживаемые форматы: .evt, .evtx, .etl
file:
# Размер запроса
batch_size: 31
# Таймаут запроса в секундах
timeout: 3
# Интервал между запуском запроса в секундах (default: 1)
poll_interval: 1
# Чтение с последней сохраненной позиции, (default: false)
read_from_last: false
# Конвертировать SID в имя.
resolve_sid: true
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "INFO"
# Количество параллельных воркеров (по умолчанию 1)
worker_count: 1
# Примерный размер буфера для сбора событий (по умолчанию 1000)
# Корректируется к ближайшему значению кратному batch_size * worker_count
buffer_size: 1000
# Параметры удаленного подключения
remote:
# Включение удаленного соединения
enabled: false
# Имя пользователя, обязательно если enabled: true
user: ""
# Пароль пользователя, обязательно если enabled: true
password: ""
# Домен пользователя
domain: ""
# Адрес удаленного сервера
remote_servers: ["localhost"]
# Доступные методы авторизации: Negotiate, Kerberos, NTLM
auth_method: "Negotiate"
# Фильтрация по полям события, регулярные выражения
filters:
# Время
# формат 2020-08-13 10:02:55.9689259 +0000 UTC
created: ""
# Числовые фильтры
# Пример для числовых фильтров - ^([5-9]\d|\d{3,})$
event_id: ""
qualifiers: ""
record_id: ""
process_id: ""
thread_id: ""
version: ""
# Строковые фильтры
# пример: DESKTOP-IDCMV6G
computer_name: ""
msg: ""
# Возможные значения: Information, Warning, Error
level_text: ""
# Пример: Service State Event
task_text: ""
# Пример: ServiceShutdown
opcode_text: ""
# Пример: System
channel_text: ""
# Пример: System
provider_text: "System"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент Eventlog XP
eventlog_xp_input: &eventlog_xp_input
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "eventlog_xp_input"
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Имя канала
channel: ['Application']
# Интервал между запуском запроса в секундах (default: 1)
poll_interval: 1
# Чтение с последней сохраненной позиции, (default: false)
read_from_last: false
# Фильтрация по полям события, регулярные выражения
filters:
# Время
# формат 2020-08-13 10:02:55.9689259 +0000 UTC
created: ''
# Числовые фильтры
# Пример для числовых фильтров - ^([5-9]\d|\d{3,})$
event_id: ''
qualifiers: ''
record_id: ''
process_id: ''
thread_id: ''
version: ''
# Строковые фильтры
# Пример: DESKTOP-IDCMV6G
computer_name: ''
msg: ''
# Возможные значения: Information, Warning, Error
level_text: ''
# Пример: Service State Event
task_text: ''
# Пример: ServiceShutdown
opcode_text: ''
# Пример: System
channel_text: ''
# Пример: System
provider_text: ''
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент External_command
external_command: &ectest
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "ectest"
# Интервал между выполнениями команд (default: 1)
poll_interval: 1
# Команда bash/cmd
command: "bash ./assets/bash/shortloop.sh"
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Компонент File_reciver
file_settings: &filetest
# Названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "filetest"
# Интервал между чтениями файла, в секундах (default: 1)
poll_interval: 1
# Список файлов для чтения
files: ["./assets/apache_logs"]
# Использовать regexp для поиска файлов
using_regexp: false
# Начальный каталог для поиска файлов
regexp_starting_dir: "."
# Регулярное выражение для поиска файлов
regexp_expression: "^.*_logs$"
# Интервал поиска файлов в секундах, в дереве каталогов (default: 2)
dir_check_interval: 2
# Чтение файла с последней позиции в следующем тике или после перезапуска
read_from_last: true
# Создание "file watchers" для всех файлов
enable_watcher: true
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Разделитель событий в файле для многострочных событий, по умолчанию "\n" (построчное чтение)
event_delimiter: "\n"
# Формат событий в файлах, допустимые значения: RAW, JSON, XML (по умолчанию RAW)
file_type: "RAW"
# Отсутствие разделителя событий в файле, используется для чтения событий в форматах JSON и XML без явного разделителя (по умолчанию false)
no_delimiter: false
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент FTP
ftptest: &ftptest
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "ftptest"
# Адреса для ftp запросов, обязательный параметр
remote_servers: ["localhost"]
# Порт для ftp запросов, обязательный параметр
port: 21
# Ftp пользователь, обязательный параметр
user: "testuser"
# Пароль пользователя, обязательный параметр
password: "testpass"
# Интервал между сканированием файла в секундах (default: 1)
poll_interval: 1
# Список файлов для чтения, обязательный параметр
files: ["apache_logs"]
# Использовать регулярное выражение для поиска файлов
using_regexp: true
# Начальный каталог для поиска файлов
regexp_starting_dir: "."
# Регулярное выражение для поиска файлов
regexp_expression: "^.*_logs$"
# Интервал проверки файлов (в секундах) в дереве каталогов (default: 2)
dir_check_interval: 2
# Чтение файла с последней позиции в следующем тике или после перезапуска
read_from_last: true
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Разделитель событий в файле для многострочных событий, по умолчанию "\n" (построчное чтение)
event_delimiter: "\n"
# Формат событий в файлах, допустимые значения: RAW, JSON, XML (по умолчанию RAW)
file_type: "RAW"
# Отсутствие разделителя событий в файле, используется для чтения событий в форматах JSON и XML без явного разделителя (по умолчанию false)
no_delimiter: false
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент HTTP_collector
http_collector: &httpcollector
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "http"
# Удаленный адрес для вызовов http (обязательно)
remote_server: "localhost"
# Удаленный порт (default: 80)
port: 80
# Имя пользователя для базовой авторизации, если пустое, считаем что авторизация выключена
basic_auth_user: ""
# Пароль для базовой авторизации
basic_auth_password: ""
# Ограничение по времени для запросов, сделанных http-клиентом в секундах (default: 10)
timeout: 10
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "INFO"
# Использовать tls клиент
enable_tls: false
# Путь к .key файлу, обязательно если enable_tls: true
key_file: "certs/server.key"
# Путь к .crt файлу, обязательно если enable_tls: true
cert_file: "certs/server.crt"
# Пароль к файлу сертификатов
cert_key_pass: ""
# Путь к файлу с набором корневых центров сертификации, обязательно если enable_tls: true
ca_file: "certs/ca.crt"
# Имя файла для получения по http
file: ""
# Чтение файла с последней позиции в следующем тике или после перезапуска (default: false)
read_from_last: false
# Интервал между http-вызовами в секундах (default: 3)
poll_interval: 3
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент HTTP_request (HTTP_reciver)
http_receiver: &httptest
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "http"
# Хост на каком запустится сервер (default: localhost)
host: "localhost"
# Порт на каком запустится сервер (обязательное)
port: 15484
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "INFO"
# Включение TLS соединения на сервере (default: false)
enable_tls: false
# Файл с приватным ключом (обязательное поле при включенном TLS)
key_file: "certs/server.key"
# Файл с сертификатом должно быть подписанным сертификатом CA (обязательное поле при включенном TLS)
cert_file: "certs/server.crt"
# Файл с паролем если сертификат подписывался с паролем
cert_key_pass: ""
# Файл с сертификатом CA (обязательное поле при включенном TLS)
ca_file: "certs/ca.crt"
# Проверять ли сертификаты клиента (default: false)
require_client_cert: false
# Количество соединений которые может принять сервер
connections_limit: 10
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент mseven6
# Используетсядля сбора событий по протоколу MS-EVEN6 с Windows Vista и выше
mseven6: &mseven6
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "test_mseven6"
# Список источников для сбора событий
sources:
-
# Адрес удаленного сервера, с которого будут собираться события
host: "192.168.56.6"
# домен
domain: ""
# Имя пользователя
user: "user"
# Пароль пользователя
password: "0000"
# Список каналов
channel: ["Application"]
# Запрос описывающий тип получаемого события. есть возможность указать
# XPath 1.0 или структурированный XML запрос. Если XPath содержит более 20 параметров, следует
# использовать структурированный XML запрос. Чтобы получить все параметры укажите "*"
query: "*"
# Ограничение на время выполнения запроса в мсек, по умолчанию 1000,
# -1 убирает ограничение
timeout_msec: 1000
# Размер запроса
batch_size: 20
# Интервал между подключениями в секундах (default: 1)
poll_interval: 1
# Чтение с последней сохраненной позиции, (default: false)
read_from_last: true
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Путь для запуска python (лучше использовать venv, создается командой make mseven6venv)
python_path: "./bin/mseven6venv/bin/python"
# Порт для взаимодействия с python сервисом-прослойкой
python_service_port: 9999
# Если указано несколько источников или каналов, считает указанное число событий и переключится на следующий
switch_count: 100
# Время жизни записи в кэше рендеринга полей (в секундах), если не задано или 0, записи не удаляются
render_cache_ttl: 600
# Интервал между запросами событий в милисекундах
request_interval_msec: 100
# Фильтрация по полям события, регулярные выражения (блэклист)
filters:
# Время
# Формат 2020-08-13 10:02:55.9689259 +0000 UTC
created: ""
# Числовые фильтры
# Пример для числовых фильтров - ^([5-9]\d|\d{3,})$
event_id: ""
qualifiers: ""
record_id: ""
process_id: ""
thread_id: ""
version: ""
# Строковые фильтры
# пример: DESKTOP-IDCMV6G
computer_name: ""
msg: ""
# Возможные значения: Information, Warning, Error
level_text: ""
# Пример: Service State Event
task_text: ""
# Пример: ServiceShutdown
opcode_text: ""
# Пример: System
channel_text: ""
# Пример: System
provider_text: "System"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент Netflow (nf)
nf_receiver: &nftest
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "netflow"
# Хост на каком запустится сервер (default: localhost)
host: "localhost"
# Порт на каком запустится сервер (обязательное)
port: 15487
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "INFO"
# Размер буфера сообщений (если не задано то берется из SO_RCVBUF)
sock_buf_size: 0
# Компонент ODBC
# Чтение данных из СУБД (MySQL, Oracle, MS SQL, PostgreSQL)
# postgres sql connection string example
# Driver={PostgreSQL};Server=IP address;Port=5432;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
# mssql connection string example
# Driver={ODBC Driver 17 for SQL Server};Server=myServerAddress;Database=myDataBase;UID=myUsername;PWD=myPassword;
# Driver={ODBC Driver 17 for SQL Server};Server=myServerAddress;Database=myDataBase;Trusted_Connection=yes;
# Oracle
# DRIVER={Oracle ODBC Driver};UID=Kotzwinkle;PWD=whatever;DBQ=instl_alias;DBA=W;
odbctest: &odbctest
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "odbc_test"
# Категория к которой относится данный input
categories: "file"
# Интервал между запуском запроса в секундах (default: 1)
poll_interval: 1
# Чтение с последней сохраненной позиции (default: false)
read_from_last: false
# Строка подключения, обязательный параметр
connection_string: "server=localhost;port=3306;driver=MySQL ODBC 8.0 Driver;database=pangeo;user=root;password=example;"
# SQL запрос, обязательный параметр
sql: >
SELECT id, message
FROM pangeo.logs_table WHERE id > ?;
# Поле, которое будет использоваться как закладка для сохранения позиции, обязательный параметр
# Поле должно быть целочисленным
# Поле должно быть указано в операторе SELECT
bookmark_field: "id"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент Opsec_lea
opsec_lea: &opsec_lea
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "opsec_lea"
# Директория расположения утилиты lea_client
exec_path: "/pangeo_radar/opsec"
# IP-адрес расположения утилиты lea_client
agent_addr: "127.0.0.1"
# Порт для подключения к утилите lea_client
agent_port: 48181
# Периодичность проверки наличия новых записей в журналах.
poll_interval: 1
# Сохранение позиции последнего чтения из журнала (сохранение на диск), возобновление чтения с последней
# Сохраненной позиции
read_from_last: false
# Сервер для сбора событий
remote_server: "192.168.1.254"
# Порт для аутентификации
auth_port: 18184
# Аутентификация для OPSEC
auth_type: "sslca"
# Параметры авторизации
opsec_sic_name: "CN=SyslogClient,O=sms.local.gc95e2"
opsec_sslca_file: "/home/user/opsec.p12"
opsec_entity_sic_name: "CN=cp_mgmt,O=sms.local.gc95e2"
opsec_sic_policy_file: ""
# Название собираемого журнала
log_filename: "fw.log"
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Компонент SFTP
sftptest: &sftptest
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "sftptest"
# Адреса для sftp запросов, обязательный параметр
remote_servers: ["localhost"]
# Порт для sftp запросов, обязательный параметр
port: 22
# Пользователь ssh, обязательный параметр
user: "foo"
# Пароль ssh, обязательный параметр
password: "pass"
# Интервал между сканированием файла в секундах (default: 1)
poll_interval: 1
# Список файлов для чтения, обязательный параметр
files: ["/upload/apache_logs"]
# Если установлено - использовать регулярное выражение для поиска файлов
using_regexp: true
# Начальный каталог для поиска файлов
regexp_starting_dir: "upload"
# Регулярное выражение для поиска файлов
regexp_expression: "^.*_logs$"
# Интервал проверки файлов (в секундах) в дереве каталогов (default: 2)
dir_check_interval: 2
# Чтениние файла с последней позиции в следующем тике или после перезапуска
read_from_last: true
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Разделитель событий в файле для многострочных событий, по умолчанию "\n" (построчное чтение)
event_delimiter: "\n"
# Формат событий в файлах, допустимые значения: RAW, JSON, XML (по умолчанию RAW)
file_type: "RAW"
# Отсутствие разделителя событий в файле, используется для чтения событий в форматах JSON и XML без явного разделителя (по умолчанию false)
no_delimiter: false
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент SMB
smb: &smb
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "smb"
# Аддреса подключения, обязательный параметр
remote_servers: ["pdc.pangeo.test"]
# Порт подключения (default: 445)
port: 445
# SMB share. sharename должен соответсвовать формату `<share>` или `\\<server>\<share>`, обязательный параметр
share: "\\\\pdc.pangeo.test\\access"
# Домен
domain: "pangeo.test"
# Имя пользователя, обязательный параметр
user: "test1"
# Пароль пользователя, обязательный параметр
password: "1qaz2WSX"
# Настройки аутентификации kerberos
kerberos:
# Включение авторизации kerberos
enabled: false
# Имя целевого сервиса (service principal name)
target_spn: "pdc"
# Kerberos realm
realm: "PANGEO.TEST"
# Путь до конфигурации kerberos
config_path: "assets/krb5/krb5.conf"
# Интервал между запуском сканирования файлов в секундах (default: 1)
poll_interval: 1
# Список файлов для чтения, обязательный параметр
files: [ "hello.txt" ]
# Использовать регулярное выражение для поиска файлов
using_regexp: false
# Начальный каталог для поиска файлов
regexp_starting_dir: "."
# Регулярное выражение для поиска файлов
regexp_expression: "^hello1.txt$"
# Интервал проверки файлов (в секундах) в дереве каталогов (default: 2)
dir_check_interval: 2
# Чтение файла с последней позиции в следующем тике или после перезапуска
read_from_last: true
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Разделитель событий в файле для многострочных событий, по умолчанию "\n" (построчное чтение)
event_delimiter: "\n"
# Формат событий в файлах, допустимые значения: RAW, JSON, XML, EVTX (по умолчанию RAW)
file_type: "RAW"
# Отсутствие разделителя событий в файле, используется для чтения событий в форматах JSON и XML без явного разделителя (по умолчанию false)
no_delimiter: false
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент SNMP
snmptraptest: &snmptraptest
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "snmptraptest"
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "INFO"
# Адресс snmp менеджера
host: "localhost"
# Порт для запуска snmp менеджера
port: 22
# Принимать только аутентифицированные SNMP v3 Traps
allow_authenticated_only: false
# Список директорий с .mib файлами для конвертации oid
# Если не указаны, oid будут передаваться в сыром виде
mib_dirs:
- dir1
- dir2
- dir3
# Параметры безопасности
# методы аутентификации. Возможные значения:
# - MD5
# - SHA
auth_proto: ""
# Методы шифрования. Поддерживается только DES.
encrypt_proto: ""
# Имя SNMP пользователя
user_name: ""
# Пароль аутентификации. Используется с MD5 или SHA
authentication_passphrase: ""
# Пароль шифрования для DES
privacy_passphrase: ""
# Используется в SNMPv3 для идентификации сущностей.
authoritative_engine_id: ""
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Компонент SSH (ssh_collector)
sshtest: &sshtest
# Названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "sshtest"
# Имя пользователя для удаленного подключения, обязательный параметр
user: "anduser"
# Список хостов для подключения, обязательный параметр
remote_servers: ["127.0.0.1"]
# Порт для подключения (default: 22)
port: 22
# Путь к файлу с ssh ключами, обязательный параметр
rsa: "~/.ssh/id_rsa"
# Пароль от файла с ключами
password: ""
# Команда для выполнения по ssh, обязательный параметр
command: "tail -F -n +$$$line$$$ /opt/pangeo/test.log"
# Если установлено - файл будет читаться с последней позиции в следующем тике или после перезапуска (default: false)
read_from_last: false
# Интервал между выполнением команд(в секундах)
ticker: 30
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент tcp_input (tcp_reciver)
tcp_receiver: &tcptest
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "tcp"
# Хост на каком запустится сервер (default: localhost)
host: "localhost"
# Порт на каком запустится сервер (обязательное)
port: 15486
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "INFO"
# Включение TLS соединения на сервере (default: false)
enable_tls: false
# Файл с приватным ключом (обязательное поле при включенном TLS)
key_file: "certs/server.key"
# Файл с сертификатом должно быть подписанным сертификатом CA (обязательное поле при включенном TLS)
cert_file: "certs/server.crt"
# Файл с паролем если сертификат подписывался с паролем
cert_key_pass: ""
# Файл с сертификатом CA (обязательное поле при включенном TLS)
ca_file: "certs/ca.crt"
# Проверять ли сертификаты клиента (default: false)
require_client_cert: false
# Нужна ли распаковка тела запроса, ожидается, что клиент упаковал тело запроса в архив (default: false)
compression_enabled: false
# Количество соединений которые может принять сервер
connections_limit: 10
# формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# размер буфера в байтах, по умолчанию 4096
buf_size: 10000
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент udp_input (udp_reciver)
udp_receiver: &udptest
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "udp"
# Хост на каком запустится сервер (default: localhost)
host: "localhost"
# Порт на каком запустится сервер (обязательное)
port: 15485
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "INFO"
# Размер буфера сообщений (если незаданные то берется из SO_RCVBUF)
sock_buf_size: 0
# Формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# Компонент WMI
wmi_settings: &wmi_settings
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "test_wmi"
# Интервал между запуском запроса в секундах (default: 1)
poll_interval: 1
# Список серверов к которым уйдет wmi запрос, обязательный параметр
remote_servers:
- "localhost"
# Имя пользователя, обязательно если это не локальный сбор
user:
# Пароль пользователя, обязательно если это не локальный сбор
password:
# Чтение с последней сохраненной позиции, (default: false)
read_from_last: false
# Уровень логирования. Если не указан, то используется параметр, настроенный в секции "journal"
log_level: "DEBUG"
# Изменение кодировки входящего события, может быть прописана у любого коллектора
encoding:
# Включение изменения кодировки
change_to_utf8: false
# Оригинальная кодировка события, если оставить пустым, произойдет попытка определить кодировку
# Нет 100% гарантии определения
original_encoding: "cp1251"
# Собирать события начиная с заданного момента
start_from_date: "2022-03-24T00:00:00+03:00"
# Список журналов, из которых собираются события (Application, System и т.п.). Если пустой или не указан, собираются все события
logfiles: ["Application"]
# Блэклист фильтры по полям события, используются регулярные выражения - https://wiki.andersenlab.com/pages/viewpage.action?pageId=153062062
wmi_filters:
# числовые поля
category: "0+"
event_code: ""
event_identifier: ""
event_type: ""
record_number: ""
# строковые поля
computer_name: ""
message: ""
source_name: ""
type: ""
user: ""
time_generated: ""
time_written: ""
###############################################
# Компоненты отправки событий (output) #
###############################################
# Запись в файл
out_file: &out_file
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "file_outputs"
# Путь до файла куда будут записываться события, обязательный параметр
file: "test_file.txt"
# Порог ротации в мегабайтах, если указан ноль ил не указан совсем ротация не происходит (default: 0)
rotation_size: 0
# Уровень логирования, если не указан используется уровень модуля журналирования
log_level: "INFO"
# Запись в сервис Kafka
kafka: &kafka
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "kafka1"
# Включение проверки сертификата (default: false)
require_cert: false
# Включение ssl (default: false)
ssl_enable: false
# Путь для файла сертификатов, если ssl_enable: false параметр не обязательный
cert_file: "certs/server.crt"
# Путь для файла ключей, если ssl_enable: false параметр не обязательный
key_file: "certs/server.key"
# Пароль для расшифровки файла ключей, если не указан считаем что файл не зашифрован
cert_key_pass: ""
# Путь до корневого сертификата, если ssl_enable: false параметр не обязательный
ca_file: "certs/ca.crt"
# Таймаут отправки события в секундах, обязательный параметр
timeout: 10
# Топик в который попадет событие, обязательный параметр
topic: "foo"
# Уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# Kafka брокеры, обязательный параметр
brokers:
- "localhost:19092"
- "localhost:29092"
- "localhost:39092"
# Максимальное количество сообщений в буфере
# queue_length_limit: 3
# Максимальное время жизни событий в очереди. в секундах
# queue_time_limit: 3
# Отправка TCP трафика
tcp_sender: &tcp_sender
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "tcp_sender"
# Адрес куда отправлять события, обязательный параметр (default: "0.0.0.0")
target_host: "0.0.0.0"
# Порт куда отправлять события, обязательный параметр
port: 15481
# Включение batch режима (default: false)
batch_mode_enable: false
# Период отправки пакета в секунундах при включенном batch режиме (default: 5)
batch_flush_interval: 5
# Количество сообщений которые попадут в пакет при включенном batch режиме (default: 500)
batch_flush_limit: 500
# Включение сжатия, включение при выключенном batch режиме ощутимо замедляет отправку (default: false)
ssl_compression: false
# Включение проверки сертификата (default: false)
require_cert: false
# Включение ssl (default: false)
ssl_enable: false
# Путь для файла сертификатов, если enable_tls: false параметр не обязательный
cert_file: "certs/server.crt"
# Путь для файла ключей, если enable_tls: false параметр не обязательный
key_file: "certs/server.key"
# Пароль для расшифровки файла ключей, если не указан считаем что файл не зашифрован
cert_key_pass: ""
# Путь до корневого сертификата, если enable_tls: false не обязательный параметр
ca_file: "certs/ca.crt"
# Уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# Максимальное количество сообщений в буфере
# queue_length_limit: 3
# Максимальное время жизни событий в очереди. в секундах
# queue_time_limit: 3
# Отправка UDP траффика
udp_sender: &udp_sender
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "udp_sender"
# Адрес куда отправлять события (default: "0.0.0.0")
target_host: "0.0.0.0"
# Порт, на который отправлять события куда отправлять события, обязательный параметр
port: 15483
# Размер буфера для отправки, если не указан или равен нулю используется системное значение (default: 0)
sock_buf_size: 0
# Уровень логирования, если не указан используется уровень модуля журналирования
log_level: "INFO"
###############################################################
# Список всех запущеных компонентов сбора (collectors) #
###############################################################
# Обязательная секция
collectors:
log_level: "DEBUG"
# opsec_lea коллектор
opsec_lea:
- <<: *opsec_lea
# etw коллектор, работает только на windows
# etw:
# - <<: *etw
# чтение из локального файла
# files:
# - <<: *filetest
# коллектор выполняющий сторонней командой
# external_command:
# - <<: *ectest
# wmi коллектор, работает только на windows
# wmi:
# - <<: *wmi_settings
# event_log коллектор, работает только на windows vista и старше
# event_log:
# - <<: *event_log
# odbc коллектор
# odbc:
# - <<: *odbctest
# ssh коллектор
# ssh:
# - <<: *sshtest
# smb коллектор
# smb:
# - <<: *smb
# ftp коллектор
# ftp:
# - <<: *ftptest
# sftp коллектор
# sftp:
# - <<: *sftptest
# tcp коллектор, пассивный прием
# tcp_receiver:
# - <<: *tcptest
# udp коллектор, пассивный прием
# udp_receiver:
# - <<: *udptest
# netflow коллектор, пассивный прием
# nf_receiver:
# - <<: *nftest
# http коллектор, пассивный прием
# http_receiver:
# - <<: *httptest
# http коллектор, удаленный сбор событий
# http_collector:
# - <<: *httpcollector
# snmp trap коллектор, пассивный прием
# snmp_trap:
# - <<: *snmptraptest
# коллектор для сбора событий по протоколу MS-EVEN6 с Windows Vista и выше
# mseven6:
# - <<: *mseven6
# тестовый коллектор, каждый период времени ticker генерирует сообщение
# test_loop:
# # названия модуля, отображается в логах и метриках, уникальный обязательный параметр
# - id: "loop_input_1"
# # период генерации сообщений в секундах
# ticker: 1
# log_level: "DEBUG"
# categories_rules:
# Список категорий допустимых в input
# - web
# - database
# - log
# - file
###############################################################
# Список всех запущеных компонентов отправки (senders) #
###############################################################
# Обязательная секция
senders:
# Порт модуля, обязательный параметр
port: 48001
# Уровень логирования, если не указан используется уровень логирования модуля журналирования
log_level: "INFO"
# Отправка в журнал
# stdout:
# Название модуля, отображается в логах и метриках, уникальный обязательный параметр
# - id: "stdout"
# log_level: "DEBUG"
# Запись в файл
# out_file:
# - <<: *out_file
# Отправка в сервис Kafka
# kafka:
# - <<: *kafka
# отправка по протоколу tcp
tcp:
- <<: *tcp_sender
# отправка по протоколу udp
# udp:
# - <<: *udp_sender
##########################################
# Маршрутизация событий (routes) #
##########################################
# Настройка маршрутов
# Обязательная секция
route_1: &route_1
collector_id:
- "opsec_lea"
sender_id:
- "tcp_sender"
# Включение маршрутов
# Обязательная секция
routers:
- <<: *route_1
################################################
# Пересылка событий в сервис Log-proxy #
################################################
# Настройка подключения к сервису Log-proxy
log_proxy:
# Включить пересылку событий в LogProxy
enable: true
# Url-сервиса для приема
url: "ws://<ip адрес Платформы Радар>:1100/"
# Отключить проверку сертификата
skip_verify: true
write_buffer_size: 10000
read_buffer_size: 10000
# Маршрутизация событий
router:
# Значение id от лог-коллектора
{"1519":
{
# Наименование источника событий
"name": "1514-Microsoft-Windows-Eventlog",
# Наименование шаблона для обработки сообщений
"template": "json-json",
# IP-адрес и порт сервиса **Kafka**;
"broker":"127.0.0.1:9092",
# Наименование топика, в который будет выполняться запис
"topic": "1514-Microsoft-Windows-Eventlog"
}
}
# Настройка шаблона для обработки сообщений
# templates:
# {"template_name": "output_template"},
# template_name – наименование шаблона для обработки сообщений, которое указывается в параметрах секции router
# output_template – результирующая строка, в которую надо подставить значения от лог-коллетора с соответствующим преобразованием. В параметре используются следующие переменные:
## %FROMHOST-IP% – IP-адрес лог-коллектора, отправившего запрос
## %timegenerated:::date-rfc3339% – дата приема сообщения в формате rfc3339
## %inputname% – имя источника из секции router
# Пример:
templates: {
"json-json":"{\"rs_relay_ip\":\"%FROMHOST-IP%\",\"rs_collector_ts\":\"%timegenerated:::date-rfc3339%\",\"__rs_module\":\"%inputname%\",%rawmsg:2:$:%",
}