ホーム > パッケージ・システム管理 > auditctl

auditctl: Linux監査ルールの管理

auditctlは、Linuxカーネルの監査(auditing)システムを制御するために使用されるコマンドラインツールです。これにより、システムで発生する特定のイベント(ファイルアクセス、システムコールなど)を監視および記録するルールを追加、削除、一覧表示できます。セキュリティ監査およびコンプライアンスのために、重要なシステムアクティビティを監視するために不可欠です。

概要

auditctlは、Linux監査システムのルールを動的に管理します。これらのルールはカーネルレベルで定義され、特定のファイルアクセス、システムコール、ユーザーアクティビティなど、さまざまなイベントを記録するように設定できます。監査ログは主に/var/log/audit/audit.logファイルに保存されます。

主な機能

  • 監査ルールの追加と削除
  • 現在アクティブな監査ルールのリスト表示
  • ファイルおよびディレクトリへのアクセス監視
  • 特定のシステムコールの監視
  • ユーザーおよびグループベースの監査ルールの設定

インストール

auditctlは、「audit」または「auditd」パッケージの一部として提供されます。ほとんどのLinuxディストリビューションではデフォルトでインストールされていないため、次のコマンドを使用してインストールできます。

Debian/Ubuntu

sudo apt update
sudo apt install auditd

DebianまたはUbuntuベースのシステムでauditctlをインストールします。

RHEL/CentOS/Fedora

sudo yum install audit
# または
sudo dnf install audit

RHEL、CentOS、またはFedoraベースのシステムでauditctlをインストールします。

インストール後、auditdサービスを開始および有効化する必要があります: `sudo systemctl enable auditd --now`

主なオプション

auditctlコマンドは、さまざまなオプションを使用して監査ルールを定義および管理します。

ルール管理

ルール定義

生成されたコマンド:

コマンドを組み合わせてみてください。

説明:

`auditctl` コマンドを実行します。

これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。

使用例

auditctlを使用して監査ルールを設定するさまざまな例です。

現在の全監査ルールの表示

sudo auditctl -l

現在カーネルにロードされているすべての監査ルールを確認します。

/etc/passwd ファイルの変更監視

sudo auditctl -w /etc/passwd -p wa -k passwd_changes

/etc/passwd ファイルに対するすべての書き込み(w)および属性変更(a)アクセスを監視し、「passwd_changes」キーを割り当てます。

/etc/shadow ファイルの読み取り試行監視

sudo auditctl -w /etc/shadow -p r -k shadow_read

/etc/shadow ファイルに対する読み取り(r)試行を監視し、「shadow_read」キーを割り当てます。

/var/log ディレクトリ内のファイル作成/削除監視

sudo auditctl -a always,exit -F dir=/var/log -F perm=wa -S creat,unlink -k log_dir_changes

/var/log ディレクトリ内でファイル作成(creat)および削除(unlink)システムコールを監視します。「log_dir_changes」キーを割り当てます。

特定のユーザー(UID)によるファイル削除試行監視

sudo auditctl -a always,exit -F arch=b64 -S unlink -F auid=1000 -k user_file_delete

UID 1000 のユーザーがファイルを削除(unlink)するシステムコールを監視します。64ビットシステムアーキテクチャを指定します。

全監査ルールの削除

sudo auditctl -D

現在ロードされているすべての監査ルールを削除します。(注意:慎重に使用してください。)

特定のキーを持つルールの削除

sudo auditctl -w /etc/passwd -p wa -k passwd_changes -d

「passwd_changes」キーを持つルールを削除します。ルールを追加したときと同じオプションを使用する必要があります。

ヒントと注意点

auditctlの使用に関する役立つヒントと注意すべき点です。

ルールの永続化

auditctlで追加されたルールは、システム再起動時に失われます。ルールを永続化するには、/etc/audit/rules.d/audit.rules ファイルにルールを追加し、「augenrules --load」または「systemctl restart auditd」コマンドで適用する必要があります。

  • ルールファイル: /etc/audit/rules.d/audit.rules
  • ルール適用: sudo augenrules --load

パフォーマンスへの影響

あまりにも多くの監査ルールを設定したり、広範囲なディレクトリを監視したりすると、システムパフォーマンスに影響を与える可能性があります。必要な最小限のルールのみを設定し、重要なパスに集中することをお勧めします。

ログファイルの確認

監査イベントは/var/log/audit/audit.logファイルに記録されます。このログを確認するには、ausearchおよびaureportコマンドを使用するのが効率的です。

アーキテクチャ指定 (-F arch=b64/b32)

システムコールを監視する際、64ビットシステムでは「-F arch=b64」を、32ビットシステムでは「-F arch=b32」を明示的に指定することをお勧めします。これは、システムコール番号がアーキテクチャごとに異なる場合があるためです。


同じカテゴリのコマンド