Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

7.5.3. /etc/audit/audit.rules ファイルでの永続的な Audit ルールの定義および制御

再起動後も持続する Audit ルールを定義するには、/etc/audit/audit.rules ファイルに直接追加するか、/ etc/audit/rules.d/ ディレクトリーにあるルールを読み込む augenrules プログラムを使用する必要があります。/etc/audit/audit.rules ファイルは、同じ auditctl コマンドライン構文を使用してルールを指定します。ハッシュ記号(#)に続く空の行とテキストは無視されます。
また、auditctl コマンドは、以下のように -R オプションを使用して指定したファイルからルールを読み込むのに使用することもできます。
~]# auditctl -R /usr/share/doc/audit/rules/30-stig.rules

制御ルールの定義

このファイルには、Audit システムの動作を変更する以下の制御ルールのみを含めることができます (-b、-D、-e、-f、--r、--loginuid-immutable、および --backlog_wait_time )。これらのオプションの詳細については、「制御ルールの定義」 を参照してください。

例7.4 audit.rules のコントロールルール

# Delete all previous rules
-D

# Set buffer size
-b 8192

# Make the configuration immutable -- reboot is required to change audit rules
-e 2

# Panic when a failure occurs
-f 2

# Generate at most 100 audit messages per second
-r 100

# Make login UID immutable once it is set (may break containers)
--loginuid-immutable 1

ファイルシステムおよびシステム呼び出しルールの定義

ファイルシステムおよびシステムコールのルールは、auditctl 構文を使用して定義されます。auditctlを使用した Audit ルールの定義」 の例は、以下のルールファイルで表示できます。

例7.5 audit.rulesのファイルシステムおよびシステム呼び出しルール

-w /etc/passwd -p wa -k passwd_changes
-w /etc/selinux/ -p wa -k selinux_changes
-w /sbin/insmod -p x -k module_insertion

-a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change
-a always,exit -S unlink -S unlinkat -S rename -S renameat -F auid>=1000 -F auid!=4294967295 -k delete

事前設定したルールファイル

/usr/share/doc/audit/rules/ ディレクトリーで、audit パッケージは、さまざまな認定標準に従って、事前設定されたルールファイルのセットを提供します。
  • 30-NISPOM.rules - National Industrial Security Program Operating Manual の Information System Security セクションで指定された要件を満たす Audit ルール設定です。
  • 30-pci-dss-v31.rules: PCI DSS(Payment Card Industry Data Security Standard)v3.1 に設定されている要件を満たす Audit ルール構成。
  • 30-STIG.rules - Security Technical Implementation Guide(STIG)が設定する要件を満たす監査ルール設定。
これらの設定ファイルを使用するには、元の /etc/audit/audit.rules ファイルのバックアップを作成し、/etc/audit/audit.rules ファイルより、選択した設定ファイルをコピーします。
~]# cp /etc/audit/audit.rules /etc/audit/audit.rules_backup
~]# cp /usr/share/doc/audit/rules/30-stig.rules /etc/audit/audit.rules
注記
Audit ルールには、順序付けが可能な番号指定スキームがあります。命名スキームの詳細は、/usr/share/doc/audit/rules/README-rules ファイルを参照してください。

augenrules を使用した永続ルールの定義

augenrules スクリプトは、/etc/audit/rules.d/ ディレクトリーにあるルールを読み込み、audit.rules ファイルにコンパイルします。 このスクリプトは、自然なソート順序に基づいて、.rules で終わるすべてのファイルを特定の順番で処理します。このディレクトリーのファイルは、以下の意味を持つグループに分類されます。
  • 10 - カーネルおよび auditctl の設定
  • 20 - 一般的なルールに該当してしまう可能性もあるが、ユーザー側で独自ルールを作成することも可能
  • 30 - 主なルール
  • 40 - 任意のルール
  • 50 - サーバー固有のルール
  • 70 - システムのローカルルール
  • 90 - ファイナライズ (不変)
ルールは、すべてを一度に使用することは意図されていません。ルールは見落とし、個々のファイルが /etc/audit/rules.d/ にコピーされる必要があるポリシーの一部です。たとえば、STIG 設定でシステムを設定し、10-base-config、30-stig、31-privileged、99-finalize の各ルールをコピーします。
/etc/audit/rules.d/ ディレクトリーにルールがあり、--load ディレクティブで augenrules スクリプトを実行するとそのファイルを読み込みます。
~]# augenrules --load
augenrules --load No rules
enabled 1
failure 1
pid 634
rate_limit 0
backlog_limit 8192
lost 0
backlog 0
enabled 1
failure 1
pid 634
rate_limit 0
backlog_limit 8192
lost 0
backlog 1
Audit ルールおよび augenrules スクリプトの詳細は、man ページの audit.rules(8) および augenrules(8) を参照してください。

このページには機械翻訳が使用されている場合があります (詳細はこちら)。