Aisbergg.beats
Ansible Rolle: aisbergg.beats
Diese Ansible-Rolle kann verschiedene Beats-Datenversender aus der offiziellen Beats-Familie installieren und konfigurieren. Folgende Beats werden von dieser Rolle unterstützt:
Anforderungen
Keine.
Rollenvariablen
Variable | Standard | Kommentare |
---|---|---|
beats_manage_repository |
true |
Aktiviert die Verwaltung des Elastic Beat-Paket-Repositorys. |
beats_rhel_repo_url |
https://artifacts.elastic.co/ packages/7.x/yum |
RPM-Repository-URL, die für die Installation verwendet werden soll |
beats_debian_repo_url |
https://artifacts.elastic.co/ packages/7.x/apt |
APT-Repository-URL, die für die Installation verwendet werden soll |
auditbeat_install_state |
absent |
Installationsstatus von Auditbeat (present , latest , absent ) |
auditbeat_service_enabled |
false |
Aktiviert den Auditbeat-Service beim Booten |
auditbeat_service_state |
stopped |
Ausführungszustand des Auditbeat-Services (started , stopped , restarted ) |
auditbeat_service_restart_on_change |
true |
Startet den Docker-Daemon-Service bei Änderungen an der Konfiguration neu. |
filebeat_install_state |
absent |
Installationsstatus von Filebeat (present , latest , absent ) |
filebeat_service_enabled |
false |
Aktiviert den Filebeat-Service beim Booten |
filebeat_service_state |
stopped |
Ausführungszustand des Filebeat-Services (started , stopped , restarted ) |
filebeat_service_restart_on_change |
true |
Startet den Docker-Daemon-Service bei Änderungen an der Konfiguration neu. |
functionbeat_install_state |
absent |
Installationsstatus von Functionbeat (present , latest , absent ) |
functionbeat_service_enabled |
false |
Aktiviert den Functionbeat-Service beim Booten |
functionbeat_service_state |
stopped |
Ausführungszustand des Functionbeat-Services (started , stopped , restarted ) |
functionbeat_service_restart_on_change |
true |
Startet den Docker-Daemon-Service bei Änderungen an der Konfiguration neu. |
heartbeat_install_state |
absent |
Installationsstatus von Heartbeat (present , latest , absent ) |
heartbeat_service_enabled |
false |
Aktiviert den Heartbeat-Service beim Booten |
heartbeat_service_state |
stopped |
Ausführungszustand des Heartbeat-Services (started , stopped , restarted ) |
heartbeat_service_restart_on_change |
true |
Startet den Docker-Daemon-Service bei Änderungen an der Konfiguration neu. |
metricbeat_install_state |
absent |
Installationsstatus von Metricbeat (present , latest , absent ) |
metricbeat_service_enabled |
false |
Aktiviert den Metricbeat-Service beim Booten |
metricbeat_service_state |
stopped |
Ausführungszustand des Metricbeat-Services (started , stopped , restarted ) |
metricbeat_service_restart_on_change |
true |
Startet den Docker-Daemon-Service bei Änderungen an der Konfiguration neu. |
packetbeat_install_state |
absent |
Installationsstatus von Packetbeat (present , latest , absent ) |
packetbeat_service_enabled |
false |
Aktiviert den Packetbeat-Service beim Booten |
packetbeat_service_state |
stopped |
Ausführungszustand des Packetbeat-Services (started , stopped , restarted ) |
packetbeat_service_restart_on_change |
true |
Startet den Docker-Daemon-Service bei Änderungen an der Konfiguration neu. |
auditbeat_config |
{} |
Konfiguration von Auditbeat. (Referenz) |
filebeat_config |
{} |
Konfiguration von Filebeat. (Referenz) |
functionbeat_config |
{} |
Konfiguration von Functionbeat. (Referenz) |
heartbeat_config |
{} |
Konfiguration von Heartbeat. (Referenz) |
metricbeat_config |
{} |
Konfiguration von Metricbeat. (Referenz) |
packetbeat_config |
{} |
Konfiguration von Packetbeat. (Referenz) |
Abhängigkeiten
Keine.
Beispiel-Playbook
- hosts: all
vars:
# Auditbeat-Service installieren und verwalten
auditbeat_install_state: present
auditbeat_service_enabled: true
auditbeat_service_state: started
auditbeat_config:
# Protokolle an zentralen Protokollsammler übertragen
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
# ersetzt das Auditd-Programm (sollte nicht parallel zu Auditd ausgeführt werden)
- 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' ]
# entnommen von: https://github.com/Neo23x0/auditd/blob/master/audit.rules
audit_rules: |
# Selbst-Audit -----------------------------------------------------------
## Audit der Audit-Logs
### Erfolgreiche und erfolglose Versuche, Informationen aus den Audit-Referenzen zu lesen
-w /var/log/audit/ -k auditlog
## Auditd-Konfiguration
### Änderungen an der Audit-Konfiguration, die stattfinden, während die Audit-Sammlung aktiv ist
-w /etc/audit/ -p wa -k auditconfig
-w /etc/libaudit.conf -p wa -k auditconfig
-w /etc/audisp/ -p wa -k audispconfig
## Überwachung der Nutzung von Audit-Verwaltungstools
-w /sbin/auditctl -p x -k audittools
-w /sbin/auditd -p x -k audittools
-w /usr/sbin/augenrules -p x -k audittools
# Filter -----------------------------------------------------------------
### Wir setzen diese frühzeitig ein, da Audit ein "First Match Wins"-System ist.
## Ignoriere SELinux AVC-Datensätze
-a always,exclude -F msgtype=AVC
## Ignoriere aktuelle Arbeitsverzeichnis-Datensätze
-a always,exclude -F msgtype=CWD
## Ignoriere EOE-Datensätze (End Of Event)
# 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 # Installierte, aktualisierte und entfernte Pakete
period: 30m # Die Frequenz, mit der die Datensätze nach Änderungen suchen
- module: system
datasets:
- host # Allgemeine Host-Informationen, z.B. Uptime, IPs
- login # Benutzeranmeldungen, -abmeldungen und Systemstarts.
- process # Gestartete und gestoppte Prozesse
- user # Benutzerinformationen
state.period: 6h
user.detect_password_changes: true
# Dateimuster der Anmeldedateien.
login.wtmp_file_pattern: /var/log/wtmp*
login.btmp_file_pattern: /var/log/btmp*
roles:
- aisbergg.beats
Lizenz
MIT
Autoreninformation
Andre Lehmann (aisberg@posteo.de)
Installieren
ansible-galaxy install Aisbergg.beats
Lizenz
mit
Downloads
3.2k
Besitzer
DevOps, Go, Python, Bash, Ansible, Docker, GitLab-CI, Linux, MariaDB, PostgreSQL, Open Source, Communication Design, Running