Перейти к основному содержимому
Версия: 4.5.X

KOMRAD-реактор

Реактор - сервис SIEM, выполняющий реакцию на инциденты. Реакция задаётся пользовательскими скриптами. Скрипты могут быть на любом языке, поддерживаемом операционной системой. Реактор позволяет работать с неограниченным количеством скриптов реакции и запускает скрипт реакции до записи инцидента, получая прямой сигнал от коррелятора, при этом не учитываются правила агрегации инцидентов.

/etc/echelon/komrad/komrad-reactor.yaml
### schema: komrad/komrad-reactor/4.1.33
# Реактор — сервис SIEM, выполняющий реакцию на инциденты. Реакция задаётся пользовательскими скриптами.
# Скрипты могут быть на любом языке, поддерживаемым операционной системой. Реактор позволяет работать
# с неограниченным количеством скриптов реакции и запускает скрипт реакции до записи инцидента, получая
# прямой сигнал от коррелятора, при этом не учитываются правила агрегации инцидентов.
# Настройка адреса для прослушивания входящих соединений по протоколу HTTP.
ListenHTTP: 127.0.0.1:3440
# Включение шифрования передачи данных Web сервера
http-tls:
disable: false
ServerName: ""
TrustedCA: /var/lib/echelon/komrad/certs/ca.pem
Cert: /var/lib/echelon/komrad/certs/server.pem
CertKey: /var/lib/echelon/komrad/certs/server-key.pem
system-pool: false
min-version: "1.3"
# Тип авторизации клиента TLS/mTLS.
# Может принимать одно из значений: no-client-cert, request-client-cert,
# require-any-client-cert, verify-client-cert-if-given,
# require-and-verify-client-cert
client-auth: no-client-cert
# Пути к доверенным корневым сертификатам для Webhook HTTP-клиента
webhook-trusted-ca:
- /var/lib/echelon/komrad/certs/ca.pem
# Настройка адреса для прослушивания входящих соединений по протоколу gRPC
ListenGRPC: 127.0.0.1:3441
bus:
servers:
- nats://10.0.5.197:3490
user: komrad
password: pass
user-credentials: ""
tls:
disable: false
ServerName: ""
TrustedCA: /var/lib/echelon/komrad/certs/ca.pem
Cert: /var/lib/echelon/komrad/certs/client.pem
CertKey: /var/lib/echelon/komrad/certs/client-key.pem
system-pool: false
min-version: "1.3"
client-auth: require-and-verify-client-cert
tuning:
connect-timeout: 10s
max-reconnects: 1000000
max-wait: 0s
ping-interval: 2m
max-pings-outstanding: 2
publish-async-max-pending: 0
reconnect-interval: 5s
reconnect-wait: 1s
retry-on-failed-connect: false
# Путь к директории, куда будут попадать логи скриптов реакции.
# Логи представляют из себя текстовые файлы собранного вывода stdout и stderr, названия файлов соответствуют названиям
# файлов скриптов реакции.
LoggingDirectory: /var/log/echelon/komrad/komrad-reactor
# Директория скриптов реакции.
# Пожалуйста, при добавлении нового скрипта, не забывайте указать для него интерпретатор.
ScriptDirectory: /opt/echelon/komrad/komrad-reactor/scripts
# Интерпретаторы для скриптовых файлов. Указываются в формате «ключ: значение», где ключ — расширение скриптового файла,
# а значение — команда для запуска интерпретатора, которая может содержать аргументы.
Interpreters:
bash: /usr/bin/bash
lua: /usr/bin/lua
py: /usr/bin/env python3
sh: /bin/sh
# Настройки вывода логов приложения.
# Сервис может отправлять логи сразу в несколько целей -- файл, системный журнал ОС, консоль, syslog.
# Включить вывод логов в консоль для режима отладки приложения
# - filename: stdout
# format: color
# filter: ""
# levels: [all]
# Включить вывод логов в файл с ротацией.
# ВАЖНО: старые файлы с логами не удаляются, необходимо производить мониторинг использования диска.
# - filename: "/var/log/echelon/komrad/service.log"
# format: json
# возможно задать выражение для фильтрации выводимых логов
# filter: ""
# levels: [info, error, warn, panic, fatal]
log:
- filename: systemd/journal
format: json
filter: ""
levels:
- info
- error
- panic
- fatal
- warn

осторожно

Старые файлы с логами не удаляются, необходимо производить мониторинг использования диска