#############################
# Основные настройки #
#############################
# Путь до файла лицензии
license_path: "./pgr-agent.lic"
# путь к файлу с секретом
secret_file: "secret"
# путь к хранилищу секретов
secret_storage: "secret.storage"
# outputs kafka
kafka_output: &kafka_output
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "kafka_output"
# включение проверки сертификата (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
# вывод в файл
file_output: &file_output
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "file_output"
# путь до файла куда будут записываться события, обязательный параметр
file: "test_file.txt"
# порог ротации в мегабайтах, если указан ноль ил не указан совсем ротация не происходит (default: 0)
rotation_size: 0
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "INFO"
# отправка по протоколу udp
udp_output: &udp_output
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "udp_output"
# адрес куда отправлять события (default: "0.0.0.0")
target_host: "0.0.0.0"
# порт, на который отправлять события куда отправлять события, обязательный параметр
port: 15483
# размер буфера для отправки, если не указан или равен нулю используется системное значение (default: 0)
sock_buf_size: 0
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "INFO"
# отправка по протоколу tcp
tcp_output: &tcp_output
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "tcp_output"
# адрес куда отправлять события, обязательный параметр (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
eventlog_input: &eventlog_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "eventlog_input"
# Имя канала, используется если не указан путь к файлу
channel: ['Application']
# Запрос описывающий тип получаемого события. есть возможность указать
# XPath 1.0 или структурированный XML запрос. Если XPath содержит более 20 параметров, следует
# использовать структурированный XML запрос. Чтобы получить все параметры укажите "*"
query: "*"
# Полный путь к лог файлу
# Поддерживаемые форматы: .evt, .evtx, .etl
file: ""
# Размер запроса
batch_size: 31
# Таймаут запроса в секундах
timeout: 3
# интервал между запуском запроса в секундах (default: 1)
poll_interval: 2
# Чтение с последней сохраненной позиции, (default: false)
read_from_last: true
# Конвертировать SID в имя.
resolve_sid: true
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "INFO"
# количество параллельных воркеров (default: 1)
worker_count: 2
# Регулирование размера буфера (default: 1000), после запуска приводится к ближайшему значению кратному BatchSize * WorkerCount
buffer_size: 1000
# Максимальное время ожидания переподключения к источнику при недоступности источника (в минутах, максимальное значение = 30, по-умолчанию 15)
reconnect_max_timeout: 30
# Параметры удаленного подключения
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_input: &eventlog_xp_input
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "eventlog_xp_input"
# Имя канала
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"
# 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;
odbc_input: &odbc_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "odbc_input"
# Категория к которой относится данный 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 > ?;
# Поле, которое будет использоваться как закладка для сохранения позиции, обязательный параметр (указывать поле, которое можно сконвертить к int)
bookmark_field: "id"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
wmi_input: &wmi_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "wmi_input"
# интервал между запуском запроса в секундах (default: 1)
poll_interval: 1
# Список серверов к которым уйдет wmi запрос, обязательный параметр
remote_servers:
- "localhost"
# Имя пользователя, обязательно если это не локальный сбор
user:
# Пароль пользователя, обязательно если это не локальный сбор
password:
# Чтение с последней сохраненной позиции, (default: false)
read_from_last: false
# уровень логирования, если не указан используется уровень модуля журналирования
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: ''
etw_input: &etw_input
# Provider name or guid.
# GUID should be in format "{9E814AAD-3204-11D2-9A82-006008A86939}".
id: "etw_input"
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"
opsec_lea_input: &opsec_lea_input
id: "opsec_lea_input"
# Директория расположения утилиты lea_client.
exec_path: "/pangeo_radar/opsec"
agent_addr: "127.0.0.1"
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"
log_level: "DEBUG"
# формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
ssh_collector_input: &ssh_collector_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "ssh_collector_input"
# имя пользователя для удаленного подключения, обязательный параметр
user: "user"
# список хостов для подключения, обязательный параметр
remote_servers: ["127.0.0.1"]
# порт для подключения (default: 22)
port: 22
# путь к файлу с ssh ключами, обязательный параметр
rsa: "~/.ssh/id_rsa"
# пароль от файла с ключами
password: "password"
# команда для выполнения по ssh, обязательный параметр
command: "tail -F -n +$$$line$$$ /opt/pangeo/test.log"
# если установлено - файл будет читаться с последней позиции в следующем тике или после перезапуска (default: false)
read_from_last: false
# интервал между выполнением команд(в секундах)
ticker: 30
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
smb_input: &smb_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "smb_input"
# аддреса подключения, обязательный параметр
remote_servers: ["pdc.pangeo.test"]
# порт подключения (default: 445)
port: 445
# SMB share. sharename должен соответсвовать формату `<share>` или `\\<server>\<share>`, обязательный параметр
share: "\\\\pdc.pangeo.test\\access"
# домен
domain: "pangeo.test"
# имя пользователя, обязательный параметр
user: "user"
# пароль, обязательный параметр
password: "password"
# настройки аутентификации 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" ]
# Чтение и парсинг файлов с расширением evtx
file_type: "EVTX"
# если установлено - использовать регулярное выражение для поиска файлов
using_regexp: false
# начальный каталог для поиска файлов
regexp_starting_dir: "."
# регулярное выражение для поиска файлов
regexp_expression: "^hello1.txt$"
# интервал проверки файлов (в секундах) в дереве каталогов (default: 2)
dir_check_interval: 2
# если установлено - файл будет читаться с последней позиции в следующем тике или после перезапуска
read_from_last: true
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
#Пример SMB_input
smb_collector: &smb_collector
id: "smb_collector"
remote_servers: ["172.30.250.26"]
port: 445
share: "\\\\172.30.250.26\\klshare"
domain: "."
user: "reader"
password: "password"
poll_interval: 3
files: [ "\\\\172.30.250.26\\klshare\\Updates\\index" ]
using_regexp: true
regexp_starting_dir: "Updates/index"
regexp_expression: ".xml$"
dir_check_interval: 3
read_from_last: true
format: "json"
log_level: "DEBUG"
ftp_input: &ftp_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "ftp_input"
# аддреса для ftp запросов, обязательный параметр
remote_servers: ["localhost"]
# порт для ftp запросов, обязательный параметр
port: 21
# ftp пользователь, обязательный параметр
user: "user"
# ftp пароль, обязательный параметр
password: "password"
# интервал между сканированием файла в секундах (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
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
sftp_input: &sftp_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "sftp_input"
# адреса для sftp запросов, обязательный параметр
remote_servers: ["localhost"]
# порт для sftp запросов, обязательный параметр
port: 22
# пользователь ssh, обязательный параметр
user: "user"
# пароль ssh, обязательный параметр
password: "password"
# интервал между сканированием файла в секундах (default: 1)
poll_interval: 1
# список файлов для чтения, обязательный параметр (если using_regexp: true, то можно оставить кавычки пустыми)
files: ["/upload/apache_logs"]
# если установлено - использовать регулярное выражение для поиска файлов
using_regexp: true
# начальный каталог для поиска файлов (указывается полный путь)
regexp_starting_dir: "/upload"
# регулярное выражение для поиска файлов
regexp_expression: "^.*_logs$"
# интервал проверки файлов (в секундах) в дереве каталогов (default: 2)
dir_check_interval: 2
# если установлено - файл будет читаться с последней позиции в следующем тике или после перезапуска
read_from_last: true
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
#Пример SFTP_input
sftp_collector_2: &sftp_collector_2
id: "sftp_collector_2"
remote_servers: ["172.30.250.55"]
port: 22
user: "root"
password: "password"
poll_interval: 5
using_regexp: true
regexp_starting_dir: "/root/test_for_lin/sftp_input/sftp/logs"
regexp_expression: ".*log$"
dir_check_interval: 5
read_from_last: true
format: "json"
log_level: "DEBUG"
nf_input: &nf_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "nf_input"
# Хост на каком запустится сервер (default: localhost)
host: "localhost"
# Порт на каком запустится сервер (обязательное)
port: 15487
# Уровень сообщений в логах, могут быть значения - DEBUG, INFO, WARN, ERROR
log_level: "INFO"
# Размер буфера сообщений (если не задано то берется из SO_RCVBUF)
sock_buf_size: 0
tcp_input: &tcp_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "tcp_input"
# Хост на каком запустится сервер (default: localhost)
host: "localhost"
# Порт на каком запустится сервер (обязательное)
port: 15486
# Уровень сообщений в логах, могут быть значения - DEBUG, INFO, WARN, ERROR
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"
# Размер буфера приемника, если не указан используется значение из ОС. Влияет на размер принимаемых событий!!!
buf_size: 16384
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
http_request_input: &http_request_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "http_request_input"
# Хост на каком запустится сервер (default: localhost)
host: "localhost"
# Порт на каком запустится сервер (обязательное)
port: 15484
# Уровень сообщений в логах, могут быть значения - DEBUG, INFO, WARN, ERROR
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"
udp_input: &udp_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "udp_input"
# Хост на каком запустится сервер (default: localhost)
host: "localhost"
# Порт на каком запустится сервер (обязательное)
port: 15485
# Уровень сообщений в логах, могут быть значения - DEBUG, INFO, WARN, ERROR
log_level: "INFO"
# Размер буфера сообщений (если незаданные то берется из SO_RCVBUF)
sock_buf_size: 0
# формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
http_collector_input: &http_collector_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "http_collector_input"
# удаленный адрес для вызовов http (обязательное)
remote_server: "localhost"
# удаленный порт (default: 80)
port: 80
# имя пользователя для базовой авторизации, если пустое, считаем что авторизация выключена
basic_auth_user: ""
# пароль для базовой авторизации
basic_auth_password: ""
# ограничение по времени для запросов, сделанных http-клиентом в секундах (default: 10)
timeout: 10
# уровень логирования, если не указан используется уровень модуля журналирования
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"
file_input: &file_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "file_input"
# интервал между чтениями файла, в секундах (default: 1)
poll_interval: 1
# список файлов для чтения
files: ["./assets/apache_logs"]
# использовать regexp для поиска файлов
using_regexp: false
# начальный каталог для поиска файлов
regexp_starting_dir: "."
# regexp для поиска файлов
regexp_expression: "^.*_logs$"
# интервал поиска файлов в секундах, в дереве каталогов (default: 2)
dir_check_interval: 2
# если установлено - файл будет читаться с последней позиции в следующем тике или после перезапуска
read_from_last: true
# создает file watchers для всех файлов
enable_watcher: true
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
external_command_input: &external_command_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "external_command_input"
# интервал между выполнениями команд (default: 1)
poll_interval: 1
# команда bash/cmd
command: "bash ./assets/bash/shortloop.sh"
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# Опции смены кодировки
encoding:
# Использовать кодировку в UTF-8
change_to_utf8: false
# Кодировка оригинала
original_encoding: "cp1251"
# формат отправки сообщения - как есть(raw), с обогащением(json)
format: "json"
snmp_traps_input: &snmp_traps_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "snmp_traps_input"
# уровень логирования, если не указан используется уровень модуля журналирования
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"
# коллектор для сбора событий по протоколу MS-EVEN6 с Windows Vista и выше
mseven6_input: &mseven6_input
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
id: "mseven6_input"
# Список источников для сбора событий
sources:
-
# Адрес удаленного сервера, с которого будут собираться события
host: "192.168.56.6"
# домен
domain: ""
# Имя пользователя
user: "user"
# Пароль пользователя
password: "password"
# Список каналов
channel: ["Application"]
# Запрос описывающий тип получаемого события. есть возможность указать
# XPath 1.0 или структурированный XML запрос. Если XPath содержит более 20 параметров, следует
# использовать структурированный XML запрос. Чтобы получить все параметры укажите "*"
query: "*"
# Размер запроса
batch_size: 20
# интервал между запуском запроса в секундах (default: 1)
poll_interval: 1
# Чтение с последней сохраненной позиции, (default: false)
read_from_last: true
# Чтение пойдёт с последних свежих событий, иначе (и по умолчанию, если не задано) чтение идёт от самого старого
read_from_last_default_newest: true
# уровень логирования, если не указан используется уровень модуля журналирования
log_level: "DEBUG"
# Если указано несколько источников или каналов, считает указанное число событий и переключится на следующий (значения по умолчанию нет, снижает eps и нагрузку на CPU)
switch_count: 100
# Пауза между запросами в мсек (значения по умолчанию нет, снижает eps и нагрузку на CPU).
request_interval_msec: 100
# Время жизни записи в кэше. Если не указан или 0, записи из кэша не удаляются.
render_cache_ttl: 0
# путь для запуска python (лучше использовать venv, создается командой make mseven6venv)
python_path: "./bin/mseven6venv/bin/python"
# порт для взаимодействия с python сервисом-прослойкой
python_service_port: 9999
# Фильтрация по полям события, регулярные выражения (блэклист)
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"
# обязательная секция
# Список всех запущеных инпутов
collectors:
log_level: "DEBUG"
# opsec_lea коллектор
opsec_lea:
- <<: *opsec_lea_input
# etw коллектор, работает только на windows
etw:
- <<: *etw_input
# чтение из локального файла
files:
- <<: *file_input
# коллектор выполняющий сторонней командой
external_command:
- <<: *external_command_input
# wmi коллектор, работает только на windows
wmi:
- <<: *wmi_input
# event_log коллектор, работает только на windows vista и старше
event_log:
- <<: *eventlog_input
# event_log_xp коллектор, работает только на windows xp
event_log_xp:
- <<: *eventlog_xp_input
# odbc коллектор
odbc:
- <<: *odbc_input
# ssh коллектор
ssh:
- <<: *ssh_collector_input
# smb коллектор
smb:
- <<: *smb_input
# ftp коллектор
ftp:
- <<: *ftp_input
# sftp коллектор
sftp:
- <<: *sftp_input
# tcp коллектор, пассивный прием
tcp_receiver:
- <<: *tcp_input
# udp коллектор, пассивный прием
udp_receiver:
- <<: *udp_input
# netflow коллектор, пассивный прием
nf_receiver:
- <<: *nf_input
# http коллектор, пассивный прием
http_receiver:
- <<: *http_request_input
# http коллектор, удаленный сбор событий
http_collector:
- <<: *http_collector_input
# snmp trap коллектор, пассивный прием
snmp_trap:
- <<: *snmp_traps_input
# коллектор для сбора событий по протоколу MS-EVEN6 с Windows Vista и выше
mseven6:
- <<: *mseven6_input
# тестовый коллектор, каждый период времени ticker генерирует сообщение
# test_loop:
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
# - id: "loop_input_1"
# период генерации сообщений в секундах
# ticker: 1
# log_level: "DEBUG"
# categories_rules:
# Список категорий допустимых в input
# - web
# - database
# - log
# - file
# обязательная секция
senders:
# порт модуля, обязательный параметр
port: 48001
# уровень логирования, если не указан используется уровень логирования модуля журналирования
log_level: "INFO"
# отправка в журнал
stdout:
# названия модуля, отображается в логах и метриках, уникальный обязательный параметр
- id: "stdout"
log_level: "DEBUG"
# запись в файл
out_file:
- <<: *ofile_output
# отправка в kafka
kafka:
- <<: *kafka_output
# отправка по протоколу tcp
tcp:
- <<: *tcp_output
# отправка по протоколу udp
udp:
- <<: *udp_output
# обязательная секция
api_server:
# хост на котором будем слушать http сервер
address: "192.168.1.100"
# порт на котором будем слушать http сервер, обязательный параметр
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 #in days
# обязательная секция
controller:
# порт модуля, обязательный параметр
port: 48000
# обязательная секция
metric_server:
# порт модуля, обязательный параметр
port: 48005
log_level: "ERROR"
# Необязательная секция для управления через UI Платформы
cluster:
url: "https://192.168.1.101:9000/cm/api/agent/"
api_key: "api_key_созданный_в_Платформе"
skip_verify: false