Aisbergg.beats
Rol de Ansible: aisbergg.beats
Este rol de Ansible puede instalar y configurar diferentes enviadores de datos Beats de la familia oficial de beats. Los siguientes Beats son compatibles con este rol:
Requisitos
Ninguno.
Variables del Rol
Variable | Predeterminado | Comentarios |
---|---|---|
beats_manage_repository |
true |
Habilitar la gestión del repositorio de paquetes Elastic Beat. |
beats_rhel_repo_url |
https://artifacts.elastic.co/ packages/7.x/yum |
URL del repositorio RPM para la instalación. |
beats_debian_repo_url |
https://artifacts.elastic.co/ packages/7.x/apt |
URL del repositorio APT para la instalación. |
auditbeat_install_state |
absent |
Estado de instalación de Auditbeat (present , latest , absent ). |
auditbeat_service_enabled |
false |
Habilitar el servicio de Auditbeat al iniciar. |
auditbeat_service_state |
stopped |
Estado de ejecución del servicio de Auditbeat (started , stopped , restarted ). |
auditbeat_service_restart_on_change |
true |
Reiniciar el servicio del demonio Docker ante cambios de configuración. |
filebeat_install_state |
absent |
Estado de instalación de Filebeat (present , latest , absent ). |
filebeat_service_enabled |
false |
Habilitar el servicio de Filebeat al iniciar. |
filebeat_service_state |
stopped |
Estado de ejecución del servicio de Filebeat (started , stopped , restarted ). |
filebeat_service_restart_on_change |
true |
Reiniciar el servicio del demonio Docker ante cambios de configuración. |
functionbeat_install_state |
absent |
Estado de instalación de Functionbeat (present , latest , absent ). |
functionbeat_service_enabled |
false |
Habilitar el servicio de Functionbeat al iniciar. |
functionbeat_service_state |
stopped |
Estado de ejecución del servicio de Functionbeat (started , stopped , restarted ). |
functionbeat_service_restart_on_change |
true |
Reiniciar el servicio del demonio Docker ante cambios de configuración. |
heartbeat_install_state |
absent |
Estado de instalación de Heartbeat (present , latest , absent ). |
heartbeat_service_enabled |
false |
Habilitar el servicio de Heartbeat al iniciar. |
heartbeat_service_state |
stopped |
Estado de ejecución del servicio de Heartbeat (started , stopped , restarted ). |
heartbeat_service_restart_on_change |
true |
Reiniciar el servicio del demonio Docker ante cambios de configuración. |
metricbeat_install_state |
absent |
Estado de instalación de Metricbeat (present , latest , absent ). |
metricbeat_service_enabled |
false |
Habilitar el servicio de Metricbeat al iniciar. |
metricbeat_service_state |
stopped |
Estado de ejecución del servicio de Metricbeat (started , stopped , restarted ). |
metricbeat_service_restart_on_change |
true |
Reiniciar el servicio del demonio Docker ante cambios de configuración. |
packetbeat_install_state |
absent |
Estado de instalación de Packetbeat (present , latest , absent ). |
packetbeat_service_enabled |
false |
Habilitar el servicio de Packetbeat al iniciar. |
packetbeat_service_state |
stopped |
Estado de ejecución del servicio de Packetbeat (started , stopped , restarted ). |
packetbeat_service_restart_on_change |
true |
Reiniciar el servicio del demonio Docker ante cambios de configuración. |
auditbeat_config |
{} |
Configuración de Auditbeat. (Referencia) |
filebeat_config |
{} |
Configuración de Filebeat. (Referencia) |
functionbeat_config |
{} |
Configuración de Functionbeat. (Referencia) |
heartbeat_config |
{} |
Configuración de Heartbeat. (Referencia) |
metricbeat_config |
{} |
Configuración de Metricbeat. (Referencia) |
packetbeat_config |
{} |
Configuración de Packetbeat. (Referencia) |
Dependencias
Ninguna.
Ejemplo de Playbook
- hosts: all
vars:
# instalar y gestionar el servicio de Auditbeat
auditbeat_install_state: present
auditbeat_service_enabled: true
auditbeat_service_state: started
auditbeat_config:
# transferir logs al recolector central
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
# este reemplaza el programa Auditd (no debe ejecutarse en paralelo con 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' ]
# tomado de: https://github.com/Neo23x0/auditd/blob/master/audit.rules
audit_rules: |
# Auto Auditoría -------------------------------------------------------------
## Auditar los logs de auditoría
### Intentos exitosos y no exitosos de leer información de los registros de auditoría
-w /var/log/audit/ -k auditlog
## Configuración de Auditd
### Modificaciones a la configuración de auditoría que ocurren mientras las funciones de recopilación de auditoría están operando
-w /etc/audit/ -p wa -k auditconfig
-w /etc/libaudit.conf -p wa -k auditconfig
-w /etc/audisp/ -p wa -k audispconfig
## Monitorear el uso de herramientas de gestión de auditoría
-w /sbin/auditctl -p x -k audittools
-w /sbin/auditd -p x -k audittools
-w /usr/sbin/augenrules -p x -k audittools
# Filtros --------------------------------------------------------------------
### Los ponemos al principio porque la auditoría es un sistema que gana con la primera coincidencia.
## Ignorar registros de AVC de SELinux
-a always,exclude -F msgtype=AVC
## Ignorar registros del directorio de trabajo actual
-a always,exclude -F msgtype=CWD
## Ignorar registros EOE (End Of E)
# 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 # Paquetes instalados, actualizados y eliminados
period: 30m # La frecuencia con la que los conjuntos de datos comprueban cambios
- module: system
datasets:
- host # Información general del host, por ejemplo, tiempo de actividad, IPs.
- login # Inicios de sesión, cierres de sesión y arranques del sistema.
- process # Procesos iniciados y detenidos
- user # Información del usuario
state.period: 6h
user.detect_password_changes: true
# Patrones de archivo de los archivos de registro de inicio de sesión.
login.wtmp_file_pattern: /var/log/wtmp*
login.btmp_file_pattern: /var/log/btmp*
roles:
- aisbergg.beats
Licencia
MIT
Información del Autor
Andre Lehmann (aisberg@posteo.de)
Instalar
ansible-galaxy install Aisbergg.beats
Licencia
mit
Descargas
3.2k
Propietario
DevOps, Go, Python, Bash, Ansible, Docker, GitLab-CI, Linux, MariaDB, PostgreSQL, Open Source, Communication Design, Running