beats
Ansible Роль: aisbergg.beats
Эта роль Ansible может установить и настроить различные шиперы данных Beats из официальной семьи beats. Данная роль поддерживает следующие Beats:
Требования
Нет.
Переменные Роли
Переменная | Значение по умолчанию | Комментарии |
---|---|---|
beats_manage_repository |
true |
Включить управление репозиторием пакетов Elastic Beat. |
beats_rhel_repo_url |
https://artifacts.elastic.co/ packages/7.x/yum |
URL RPM репозитория для установки |
beats_debian_repo_url |
https://artifacts.elastic.co/ packages/7.x/apt |
URL APT репозитория для установки |
auditbeat_install_state |
absent |
Состояние установки Auditbeat (present , latest , absent ) |
auditbeat_service_enabled |
false |
Включить сервис Auditbeat при загрузке |
auditbeat_service_state |
stopped |
Состояние работы сервиса Auditbeat (started , stopped , restarted ) |
auditbeat_service_restart_on_change |
true |
Перезапустить службу Docker при изменении конфигурации. |
filebeat_install_state |
absent |
Состояние установки Filebeat (present , latest , absent ) |
filebeat_service_enabled |
false |
Включить сервис Filebeat при загрузке |
filebeat_service_state |
stopped |
Состояние работы сервиса Filebeat (started , stopped , restarted ) |
filebeat_service_restart_on_change |
true |
Перезапустить службу Docker при изменении конфигурации. |
functionbeat_install_state |
absent |
Состояние установки Functionbeat (present , latest , absent ) |
functionbeat_service_enabled |
false |
Включить сервис Functionbeat при загрузке |
functionbeat_service_state |
stopped |
Состояние работы сервиса Functionbeat (started , stopped , restarted ) |
functionbeat_service_restart_on_change |
true |
Перезапустить службу Docker при изменении конфигурации. |
heartbeat_install_state |
absent |
Состояние установки Heartbeat (present , latest , absent ) |
heartbeat_service_enabled |
false |
Включить сервис Heartbeat при загрузке |
heartbeat_service_state |
stopped |
Состояние работы сервиса Heartbeat (started , stopped , restarted ) |
heartbeat_service_restart_on_change |
true |
Перезапустить службу Docker при изменении конфигурации. |
metricbeat_install_state |
absent |
Состояние установки Metricbeat (present , latest , absent ) |
metricbeat_service_enabled |
false |
Включить сервис Metricbeat при загрузке |
metricbeat_service_state |
stopped |
Состояние работы сервиса Metricbeat (started , stopped , restarted ) |
metricbeat_service_restart_on_change |
true |
Перезапустить службу Docker при изменении конфигурации. |
packetbeat_install_state |
absent |
Состояние установки Packetbeat (present , latest , absent ) |
packetbeat_service_enabled |
false |
Включить сервис Packetbeat при загрузке |
packetbeat_service_state |
stopped |
Состояние работы сервиса Packetbeat (started , stopped , restarted ) |
packetbeat_service_restart_on_change |
true |
Перезапустить службу Docker при изменении конфигурации. |
auditbeat_config |
{} |
Конфигурация Auditbeat. (Ссылка) |
filebeat_config |
{} |
Конфигурация Filebeat. (Ссылка) |
functionbeat_config |
{} |
Конфигурация Functionbeat. (Ссылка) |
heartbeat_config |
{} |
Конфигурация Heartbeat. (Ссылка) |
metricbeat_config |
{} |
Конфигурация Metricbeat. (Ссылка) |
packetbeat_config |
{} |
Конфигурация Packetbeat. (Ссылка) |
Зависимости
Нет.
Пример Playbook
- hosts: all
vars:
# установить и управлять сервисом Auditbeat
auditbeat_install_state: present
auditbeat_service_enabled: true
auditbeat_service_state: started
auditbeat_config:
# передавать логи в центральный сборщик логов
output.logstash:
hosts:
- graylog1.example.org:5555
- graylog2.example.org:5555
loadbalance: true
slow_start: true
logging.level: warning
logging.to_files: false
logging.metrics.enabled: false
auditbeat.modules:
# https://www.elastic.co/guide/en/beats/auditbeat/current/auditbeat-module-auditd.html
# это заменяет программу Auditd (не должно работать параллельно с Auditd)
- module: auditd
resolve_ids: true
failure_mode: silent
backlog_limit: 8196
rate_limit: 0
include_raw_message: false
include_warnings: false
audit_rule_files: [ '${path.config}/audit.rules.d/*.conf' ]
# взято из: https://github.com/Neo23x0/auditd/blob/master/audit.rules
audit_rules: |
# Самоаудит ---------------------------------------------------------------
## Аудит журналов аудита
### Успешные и неуспешные попытки прочитать информацию из журналов аудита
-w /var/log/audit/ -k auditlog
## Конфигурация Auditd
### Изменения конфигурации аудита, происходящие во время работы функции сбора аудита
-w /etc/audit/ -p wa -k auditconfig
-w /etc/libaudit.conf -p wa -k auditconfig
-w /etc/audisp/ -p wa -k audispconfig
## Мониторинг использования инструментов управления аудитом
-w /sbin/auditctl -p x -k audittools
-w /sbin/auditd -p x -k audittools
-w /usr/sbin/augenrules -p x -k audittools
# Фильтры ---------------------------------------------------------------------
### Мы ставим это первым, потому что аудит - это система первого совпадения.
## Игнорировать записи SELinux AVC
-a always,exclude -F msgtype=AVC
## Игнорировать записи текущего рабочего каталога
-a always,exclude -F msgtype=CWD
## Игнорировать записи EOE (конец окончания)
# https://www.elastic.co/guide/en/beats/auditbeat/current/auditbeat-module-file_integrity.html
- module: file_integrity
paths:
- /bin
- /usr/bin
- /sbin
- /usr/sbin
- /etc
exclude_files:
- '(?i)\.sw[nop]$'
- '~$'
- '/\.git($|/)'
- '/etc/mtab'
scan_at_start: true
scan_rate_per_sec: 50 MiB
max_file_size: 300 MiB
hash_types: [blake2b_256]
recursive: true
# https://www.elastic.co/guide/en/beats/auditbeat/current/auditbeat-module-system.html
- module: system
datasets:
- package # Установлены, обновлены и удалены пакеты
period: 30m # Частота, с которой наборы данных проверяют изменения
- module: system
datasets:
- host # Общая информация о хосте, например, время работы, IP-адреса
- login # Входы, выходы пользователей и загрузки системы.
- process # Запущенные и остановленные процессы
- user # Информация о пользователе
state.period: 6h
user.detect_password_changes: true
# Шаблоны файлов журнала входа.
login.wtmp_file_pattern: /var/log/wtmp*
login.btmp_file_pattern: /var/log/btmp*
roles:
- aisbergg.beats
Лицензия
MIT
Информация об авторе
Андре Леманн (aisberg@posteo.de)
Установить
ansible-galaxy install aisbergg/ansible-role-beats
Лицензия
mit
Загрузки
3186
Владелец
DevOps, Go, Python, Bash, Ansible, Docker, GitLab-CI, Linux, MariaDB, PostgreSQL, Open Source, Communication Design, Running