trombik.argus
trombik.argus
ansible
Rolle für argus
.
Hinweise für alle Benutzer
Die Rolle geht davon aus, dass der Pfad zum Log-Verzeichnis, in dem die erfasste ra
-Datei aufgezeichnet wird, /var/log/argus
ist und es dem Benutzer argus
gehört.
Hinweise für alle Benutzer außer OpenBSD-Benutzern
Die Rolle erstellt die Gruppe argus
und den Benutzer argus
.
Hinweise für Ubuntu- und CentOS-Benutzer
Die systemd
-Einheitendatei für argus(8)
wird geändert, damit /etc/default/argus
oder /etc/sysconfig/argus
von systemd
gelesen wird.
Anforderungen
Rollen-Variablen
Variable | Beschreibung | Standard |
---|---|---|
argus_package |
Paketname von argus |
{{ __argus_package }} |
argus_service |
Dienstname von argus |
{{ __argus_service }} |
argus_extra_packages |
Eine Liste von zusätzlichen Paketen zur Installation | [] |
argus_user |
Benutzername von argus |
{{ __argus_user }} |
argus_group |
Gruppenname von argus |
{{ __argus_group }} |
argus_extra_groups |
Eine Liste zusätzlicher Gruppen für argus_user |
[] |
argus_log_dir |
Pfad zum Log-Verzeichnis | /var/log/argus |
argus_config_dir |
Pfad zum Konfigurationsverzeichnis | {{ __argus_config_dir }} |
argus_config_file |
Pfad zu argus.conf |
{{ argus_config_dir }}/argus.conf |
argus_config |
Der Inhalt von argus.conf |
"" |
argus_flags |
Siehe unten | "" |
argus_flags
Diese Variable wird verwendet, um die Standardwerte für Startskripte zu überschreiben. In Debian-Varianten ist der Wert der Inhalt von /etc/default/argus
. In RedHat-Varianten ist es der Inhalt von /etc/sysconfig/argus
. In FreeBSD ist es der Inhalt von /etc/rc.conf.d/argus
. In OpenBSD wird der Wert an rcctl set argus
übergeben.
Debian
Variable | Standard |
---|---|
__argus_service |
argus |
__argus_package |
argus-server |
__argus_config_dir |
/etc |
__argus_user |
argus |
__argus_group |
argus |
__argus_log_dir |
/var/log/argus |
FreeBSD
Variable | Standard |
---|---|
__argus_service |
argus |
__argus_package |
net-mgmt/argus3 |
__argus_config_dir |
/usr/local/etc |
__argus_user |
argus |
__argus_group |
argus |
__argus_log_dir |
/var/log/argus |
OpenBSD
Variable | Standard |
---|---|
__argus_service |
argus |
__argus_package |
argus |
__argus_config_dir |
/etc |
__argus_user |
_argus |
__argus_group |
_argus |
__argus_log_dir |
/var/log/argus |
RedHat
Variable | Standard |
---|---|
__argus_service |
argus |
__argus_package |
argus |
__argus_config_dir |
/etc |
__argus_user |
argus |
__argus_group |
argus |
__argus_log_dir |
/var/log/argus |
Abhängigkeiten
Beispiel-Playbook
---
- hosts: localhost
roles:
- role: trombik.redhat_repo
when:
- ansible_os_family == 'RedHat'
- name: trombik.argus_clients
- name: ansible-role-argus
pre_tasks:
- name: Alle Hostvariablen ausgeben
debug:
var: hostvars[inventory_hostname]
post_tasks:
- name: Liste aller Dienste (systemd)
# Umgehung für ansible-lint: [303] Dienst anstelle des Dienstmoduls verwendet
shell: "echo; systemctl list-units --type service"
changed_when: false
when:
# in Docker ist init nicht systemd
- ansible_virtualization_type != 'docker'
- ansible_os_family == 'RedHat' oder ansible_os_family == 'Debian'
- name: Liste aller Dienste (FreeBSD-Dienst)
# Umgehung für ansible-lint: [303] Dienst anstelle des Dienstmoduls verwendet
shell: "echo; service -l"
changed_when: false
when:
- ansible_os_family == 'FreeBSD'
vars:
os_argus_flags:
OpenBSD: "-F {{ argus_config_file }}"
FreeBSD: |
argus_flags='-F {{ argus_config_file }}'
argus_pidfile='/var/run/argus.{{ ansible_default_ipv4.device | default(omit) }}.*.pid'
Debian: |
ARGUS_OPTIONS="-F {{ argus_config_file }}"
RedHat: |
ARGUS_OPTIONS="-F {{ argus_config_file }}"
argus_flags: "{{ os_argus_flags[ansible_os_family] }}"
argus_extra_groups:
- bin
os_interface:
FreeBSD: em0
OpenBSD: em0
Debian: eth0
RedHat: eth0
argus_config: |
ARGUS_FLOW_TYPE="Bidirektional"
ARGUS_FLOW_KEY="CLASSIC_5_TUPLE"
{% if ansible_os_family != 'Debian' und ansible_os_family != 'RedHat' %}
# XXX die Einheitendatei erwartet, dass der Befehl nicht forked
ARGUS_DAEMON=yes
{% endif %}
ARGUS_ACCESS_PORT=561
ARGUS_BIND_IP="127.0.0.1"
ARGUS_INTERFACE={{ os_interface[ansible_os_family] }}
ARGUS_GO_PROMISCUOUS=yes
ARGUS_SETUSER_ID={{ argus_user }}
ARGUS_SETGROUP_ID={{ argus_group }}
ARGUS_OUTPUT_FILE={{ argus_log_dir}}/argus.ra
ARGUS_FLOW_STATUS_INTERVAL=60
ARGUS_MAR_STATUS_INTERVAL=300
ARGUS_DEBUG_LEVEL=1
ARGUS_FILTER="ip"
ARGUS_SET_PID=yes
ARGUS_PID_PATH=/var/run
redhat_repo_extra_packages:
- epel-release
redhat_repo:
epel:
mirrorlist: "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-{{ ansible_distribution_major_version }}&arch={{ ansible_architecture }}"
gpgcheck: ja
enabled: ja
Lizenz
Copyright (c) 2016 Tomoyuki Sakurai <y@trombik.org>
Die Erlaubnis zur Nutzung, Kopie, Änderung und Verbreitung dieser Software für jeden
Zweck, mit oder ohne Gebühr, wird hiermit gewährt, vorausgesetzt, dass der obige
Copyright-Hinweis und dieser Erlaubnis-Hinweis in allen Kopien enthalten sind.
DIE SOFTWARE WIRD "WIE BESEHEN" BEREITGESTELLT UND DER AUTOR SCHLIESST ALLE GARANTIEN
IM ZUSAMMENHANG MIT DIESER SOFTWARE AUS, EINSCHLIESSLICH ALLER IMPLICIERTEN GARANTIEN DER
MARKTGÄNGIGKEIT UND FITNESS. IN KEINEM FALL IST DER AUTOR FÜR BESONDERE, DIREKTE, INDIREKTE
ODER FOLGESCHÄDEN ODER FÜR IRGENDEINE SCHÄDEN HAFTBAR, DIE AUS DEM VERLUST DER NUTZUNG,
DATEN ODER GEWINNE RESULTIEREN, OB IN EINER KLAUSEL AUFVERTRAG, FAHRLÄSSIGKEIT ODER ANDERER
ENTEIGEN MITEINANDER HINGEROTZENE IN VERBINDUNG MIT DER NUTZUNG ODER DER LEISTUNG DIESER SOFTWARE
RESULTIEREN.
Autoreninformation
Tomoyuki Sakurai y@trombik.org
Installieren
ansible-galaxy install trombik.argus
Lizenz
isc
Downloads
134
Besitzer
PGP finger print: 03EB 3D97 5E04 9B0C AB21 93A2 D693 42A9 EFBC 3577
Makerspace and Coliving in Siem Reap, Cambodia: http://info.mkrsgh.org/