auditdは/var/log/audit/audit.logに書き込み、ルートのみが読み取れます。オリジナル形式での時間ウィンドウの迅速なエクスポート方法は次のとおりです:
sudo ausearch --raw -ts yesterday > web-03_audit.log
/var/log/auditが存在しない場合、auditdはインストールされていません。それはDebianとUbuntuのデフォルトです。カーネルの監査イベントはjournalに送られ、journalctl _TRANSPORT=auditがそれらを見つけます。
auditdは「誰が何を実行し、どのファイルに触れたか」に対するLinuxの答えです:プロセス実行、ファイルアクセス、権限変更、アカウント変更、システムコールレベルまで。Prime Coreにはauditdデータ用の1350の検出ルールがあり、440のMITRE ATT&CKテクニックにマッピングされています。その中には:悪意のあるシェルの使用(T1059.004)、埋め込まれたSSHキー(T1098.004)、機密ファイルの権限変更(T1222.002)が含まれます。
始める前に
実行中かつ何を記録しているか?
systemctl is-active auditd
sudo auditctl -l
Red Hat系システムはデフォルトでauditdをインストールします。DebianとUbuntuはauditdパッケージが必要です。auditctl -lが「No rules」と表示しても、ログイン、認証、SELinux拒否の基本ラインを取得します。ただし、コマンド実行やファイルアクセスの記録は得られません。要求されていないからです。
ルートのみ。 /var/log/auditは厳重にロックされているため、sudoを計画してください。
ローテーションはauditd自身のものです。 auditdは/etc/audit/auditd.confのmax_log_fileとnum_logsに基づいて自身のログをaudit.log.1、audit.log.2などにローテーションします。古い履歴はそれらのファイルに保存されます。
フォーマットに慣れる必要があります。 1つのイベントはしばしば複数行(SYSCALL、EXECVE、CWD、PATH、PROCTITLE)になり、同じmsg=audit(<epoch>:<serial>)スタンプを共有します。スペースを含む値は16進エンコードされています。それが普通です。
ステップ1: ausearchでエクスポート
ausearchは時間、記録タイプ、ルールキーでフィルタリングし、–rawはオリジナル形式を保持します:
# 1日、raw
sudo ausearch --raw -ts yesterday -te today > web-03_audit.log
キーワードtoday、yesterday、this-week、およびrecent(最後の10分間)は日付形式から救済します。明示的な日付はあなたのロケールに従います、en_USでは10/19/2026 00:00:00です。これがほとんどの「一致なし」の驚きを生む原因です。
アップロード時には、–rawを保持してください:オリジナルの記録が解釈されたビューよりも多くを伝えます。
すべてを取得したい場合は、最も古い順にファイルを結合します:
sudo cat $(ls -tr /var/log/audit/audit.log*) > web-03_audit_all.log
ステップ2(auditdなし):ジャーナルから監査イベントを取得
auditdなしでも、カーネルの監査記録はjournaldに届きます:
sudo journalctl _TRANSPORT=audit --since yesterday -o json --no-pager > web-03_audit.jsonl
ルールがロードされていない場合、主にログインおよびSELinuxまたはAppArmorメッセージを期待してくださいが、何もないより良いです。
LogTotalでアップロード、消毒、レビュー
[PROOF: confirm LogTotal parses raw auditd format. If it doesn’t yet, publish this guide with the journal JSON route only, or hold it until support lands.]
- アップロード。 開く logtotal.com そしてファイルをドロップします。
- 消毒。 [PROOF: what gets masked in auditd records: usernames, hostnames, IPs, paths]. Look it over before you continue.
- レビュー。
問題が発生した場合
| 症状 | 考えられる原因 | Fix |
|---|---|---|
| /var/log/auditが存在しない | auditdがインストールされていない | ジャーナルルートを使用(ステップ2) |
| 許可が拒否されました | ルートではない | sudo |
| ログインのみ、コマンドなし | 実行ルールが読み込まれていない | 予想通り;将来のためにルールを追加 |
| ausearchからの<no matches> | 日付フォーマットがロケールと一致しない | 今日、昨日、今週を使用 |
| カーネルメッセージの“backlog limit exceeded” | カーネルが負荷の下で監査イベントをドロップした | ログにギャップがあると見なし、backlog_limitを増やす |
FAQ
auditdを今すぐオンにするべきですか?
はい、次回のために。ルールがすべてを決定するため、最初から独自に作成するのではなく、既知のルールセットから始めましょう。監査パッケージはサンプルルールを提供し、よく整備されたコミュニティセットが存在します。
auditdかジャーナル:どちらが実際の記録か?
auditdが稼働している場合、/var/log/audit/audit.logが完全なものです。設定に応じて、ジャーナルには部分的なコピーが含まれているかもしれません。