このドキュメントで説明するソフトウェアは、Extended SupportまたはSustaining Supportのいずれかにあります。 詳細は、https://www.oracle.com/us/support/library/enterprise-linux-support-policies-069172.pdfを参照してください。
Oracleでは、このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお薦めします。
監査では、分析可能なカーネル・レベルでデータを収集して、不正なアクティビティを識別します。 監査では、システム・ロギングよりもはるかに詳細なデータが数多く収集されますが、ほとんどの監査イベントは退屈で重要ではありません。 監査証跡を調査して対象のイベントを見つけるプロセスは非常に難しく、自動化することが必要になります。
監査構成ファイル/etc/audit/auditd.conf
では、データ保持ポリシー、監査ボリュームの最大サイズ、監査ボリュームの容量を超えた場合にとるべき措置、およびローカルおよびリモートの監査証跡ボリュームの場所を定義します。 デフォルトの監査証跡ボリュームは、/var/log/audit/audit.log
です。 詳細は、auditd.conf(5)
マニュアル・ページを参照してください。
監査では、デフォルトで、システム・ログイン、アカウントに対する変更、sudoアクションなどの特定のイベントがキャプチャされます。 詳細なシステム・コール・アクティビティや特定ファイルに対する変更をキャプチャするように、監査を構成することもできます。 カーネル監査デーモン(auditd
)は、イベント・タイプ、タイム・スタンプ、関連付けられているユーザーID、システム・コールの成功または失敗などの、ユーザーが構成したイベントを記録します。
監査ルール・ファイル/etc/audit/audit.rules
のエントリにより、監査対象イベントが決定されます。 各ルールは、auditctlコマンドに渡されるコマンドライン・オプションです。 通常このファイルは、サイトのセキュリティ・ポリシーに合致するように構成する必要があります。
次に、/etc/audit/audit.rules
ファイルで設定できるルールの例を示します。
/etc
ディレクトリ階層のファイルに対するopen
およびtruncate
システム・コールの終了の失敗をすべて記録します。
-a exit,always -S open -S truncate -F /etc -F success=0
UID 10のユーザーによって開かれたすべてのファイルを記録します。
-a exit,always -S open -F uid=10
当初500超のUIDでログインしたユーザーによって書き込まれた、または属性が変更されたすべてのファイルを記録します。
-a exit,always -S open -F auid>=500 -F perm=wa
/etc/sudoers
への書き込みリクエストまたはファイル属性変更アクセス・リクエストを記録して、これらのレコードに文字列sudoers-change
を使用してタグ付けします。
-w /etc/sudoers -p wa -k sudoers-change
/etc
ディレクトリ階層への書き込みリクエストまたはファイル属性変更アクセス・リクエストを記録します。
-w /etc/ -p wa
監査構成の変更後にリブートが必要です。 指定されている場合、このルールは/etc/audit/audit.rules
ファイルの末尾に表示される必要があります。
-e 2
/usr/share/doc/audit-
、およびversion
/stig.rulesauditctl(8)
およびaudit.rules(7)
の各マニュアル・ページに、監査ルールのその他の例が記載されています。
厳格な監査要件を設定すると、パフォーマンス・オーバーヘッドが大きくなり、大量の監査データが生成されます。 一部のサイト・セキュリティ・ポリシーでは、監査ボリュームが容量を超えるためにイベントを記録できない場合は、システムをシャットダウンする必要があることを明文化しています。 一般的に、オーバーフローを防ぎ、バックアップを促進するために、監査データを順番に別個のファイル・システムに置く必要があります。
ausearchコマンドを使用して容易に監査ボリュームで監査レコードを特定できるように、-kオプションを使用して監査レコードをタグ付けできます。 たとえば、文字列sudoers-change
を使用してタグ付けされたレコードを調べるには、次のように入力します。
# ausearch -k sudoers-change
aureportコマンドは、監査データのサマリーを生成します。 aureportを定期的に実行するcron
ジョブを設定して、対象のレポートを生成できます。 たとえば、次のコマンドは、前日の午前0時の1秒後から現在時刻までのすべてのログイン・イベントを示すレポートを生成します。
# aureport -l -i -ts yesterday -te now
詳細は、ausearch(8)
およびaureport(8)
の各マニュアル・ページを参照してください。