robertdebock.auditd

Ansibleロール auditd

このシステムにauditdをインストールして設定します。

GitHub GitLab ダウンロード バージョン
github gitlab downloads Version

例のPlaybook

この例はmolecule/default/converge.ymlから取られており、各プッシュ、プルリクエスト、リリース時にテストされています。

---
- name: Converge
  hosts: all
  become: true
  gather_facts: true

  roles:
    - role: robertdebock.auditd
      auditd_start_service: false
      auditd_local_events: "no"
      auditd_rules:
        - file: /var/log/audit/
          keyname: auditlog
        - file: /etc/audit/
          permissions:
            - write
            - attribute_change
          keyname: auditconfig
        - file: /etc/libaudit.conf
          permissions:
            - write
            - attribute_change
          keyname: auditconfig
        - file: /etc/audisp/
          permissions:
            - write
            - attribute_change
          keyname: audispconfig
        - file: /sbin/auditctl
          permissions:
            - execute
          keyname: audittools
        - file: /sbin/auditd
          permissions:
            - execute
          keyname: audittools
        - syscall: open
          action: always
          filter: exit
          filters:
            - auid!=4294967295
            - auid!=unset
          keyname: my_keyname
          arch: b32
        - syscall: adjtimex
          action: always
          filter: exit
          keyname: time_change
        - syscall: settimeofday
          action: always
          filter: exit
          keyname: time_change
        - action: always
          filter: exit
          filters:
            - path=/bin/ping
            - perm=x
            - auid>=500
            - auid!=4294967295
          keyname: privileged

マシンの準備が必要です。CIではmolecule/default/prepare.ymlを使用してこれを行います:

---
- name: Prepare
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: robertdebock.bootstrap

これらのロールの使用方法に関する完全な説明と例も見てください。

ロール変数

変数のデフォルト値はdefaults/main.ymlに設定されています:

---
# auditdのデフォルトファイル

# 以下の変数はauditd.confのマニュアルページに文書化されています
# https://linux.die.net/man/5/auditd.conf
auditd_buffer_size: 32768
auditd_fail_mode: 1
auditd_maximum_rate: 60
auditd_enable_flag: 1
auditd_local_events: "yes"
auditd_write_logs: "yes"
auditd_log_file: /var/log/audit/audit.log
auditd_log_group: root
auditd_log_format: RAW
auditd_flush: incremental_async
auditd_freq: 50
auditd_max_log_file: 8
auditd_num_logs: 5
auditd_priority_boost: 4
auditd_disp_qos: lossy
auditd_dispatcher: /sbin/audispd
auditd_name_format: none
auditd_max_log_file_action: rotate
auditd_space_left: "75"  # これは数値 ('25') またはパーセンテージ ('25%') できます。
auditd_space_left_action: syslog
auditd_verify_email: "yes"
auditd_action_mail_acct: root
auditd_admin_space_left: 50
auditd_admin_space_left_action: suspend
auditd_disk_full_action: suspend
auditd_disk_error_action: suspend
auditd_use_libwrap: "yes"
auditd_tcp_listen_queue: 5
auditd_tcp_max_per_addr: 1
auditd_tcp_client_max_idle: 0
auditd_enable_krb5: "no"
auditd_krb5_principal: auditd
auditd_distribute_network: "no"

# このロールでルールを管理するかどうか選択できます。
# auditd_manage_rulesをfalseに設定するとルールは管理されません。
auditd_manage_rules: true

# 一部のルールには特定のアーキテクチャを設定する必要があります。
auditd_default_arch: b64

# auditdサービスを起動するかどうか選ぶことができます。
# 主にCIで、サービスを起動しないようにするために便利です。
auditd_start_service: true

必要条件

使用されるロールの状態

以下のロールはシステムを準備するために使用されます。別の方法でシステムを準備することもできます。

要件 GitHub GitLab
robertdebock.bootstrap Build Status GitHub Build Status GitLab

コンテキスト

このロールは多くの互換性のあるロールの一部です。これらのロールに関するさらなる情報はこちらのドキュメントをご覧ください。

関連するロールの概要: dependencies

互換性

このロールは以下のコンテナイメージでテストされています:

コンテナ タグ
EL 9
Debian all
Fedora all
Ubuntu all

必要なAnsibleの最低バージョンは2.12で、次のバージョンでテストが行われています:

  • 前のバージョン。
  • 現在のバージョン。
  • 開発バージョン。

問題がある場合は、GitHubに登録してください。

ライセンス

Apache-2.0

著者情報

robertdebock

私をサポートすることを考慮してください

プロジェクトについて

Install and configure auditd on your system.

インストール
ansible-galaxy install robertdebock.auditd
ライセンス
apache-2.0
ダウンロード
61.5k
所有者
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.