GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS/RHEL での再起動コマンドの実行をログに記録する監査ルール

auditd は、Linux 監査システムのユーザー空間コンポーネントです。監査レコードをディスクに書き込む役割を果たします。ログを表示するには、ausearch または aureport ユーティリティを使用します。監査ルールの構成は、auditctl ユーティリティを使用して行います。起動時に、/etc/audit/rules.d/audit.rules (CentOS/RHEL 7 の場合) のルールが auditctl によって読み取られます。監査デーモン自体には、管理者がカスタマイズできるいくつかの構成オプションがあります。それらは auditd.conf ファイルにあります。

この投稿では、Linux サーバーの再起動/シャットダウンに使用されるユーザー資格情報とコマンドを取得するためのサンプル監査ルールを提供しています。このルールは必要に応じて変更できます。

監査ルールを追加するための主要な構成ファイルは「/etc/audit/audit.rules」であり、必要なルールで同じものを更新する必要があります。

注意 :CentOS/RHEL 7 では、構成ファイルは /etc/audit/audit.rules ではなく /etc/audit/rules.d/audit.rules です。

監査構成

以下は CentOS/RHEL 6 に基づく例ですが、手順は CentOS/RHEL 7 でも同じです。

1. 既存の構成のバックアップを取ります。

# cp /etc/audit/audit.rules /etc/audit/audit.rules.bkp

2. ファイル /etc/audit/audit.rules を編集し、次のルールを追加して永続化します。

# vi /etc/audit/audit.rules
-a exit,always -F arch=b64 -S execve -F path=/sbin/reboot -k reboot    [ -k Filter key ]
-a exit,always -F arch=b64 -S execve -F path=/sbin/init -k reboot
-a exit,always -F arch=b64 -S execve -F path=/sbin/poweroff -k reboot
-a exit,always -F arch=b64 -S execve -F path=/sbin/shutdow -k reboot

3. auditd サービスを再起動して、変更を有効にします。

# service auditd restart

4. 追加されたルールをリストします。

# auditctl -l
LIST_RULES: exit,always arch=3221225534 (0xc000003e) watch=/sbin/reboot key=reboot syscall=execve
LIST_RULES: exit,always arch=3221225534 (0xc000003e) watch=/sbin/init key=reboot syscall=execve
LIST_RULES: exit,always arch=3221225534 (0xc000003e) watch=/sbin/poweroff key=reboot syscall=execve
LIST_RULES: exit,always arch=3221225534 (0xc000003e) watch=/sbin/shutdow key=reboot syscall=execve

確認

監査ログから再起動イベントをフィルターするには、フィルター キーを指定する必要があります。

# ausearch -k reboot

time->Mon Jan 4 11:48:20 2016
type=PATH msg=audit(1451926100.004:17): item=1 name=(null) inode=1368522 dev=fc:00 mode=0100755 ouid=0 ogid=0 rdev=00:00
type=PATH msg=audit(1451926100.004:17): item=0 name="/sbin/init" inode=1792404 dev=fc:00 mode=0100755 ouid=0 ogid=0 rdev=00:00
type=CWD msg=audit(1451926100.004:17): cwd="/root"
type=EXECVE msg=audit(1451926100.004:17): argc=2 a0="init" a1="6"  
type=SYSCALL msg=audit(1451926100.004:17): arch=c000003e syscall=59 success=yes exit=0 a0=12706f0 a1=1271190 a2=1268ec0 a3=8 items=2 ppid=2830 pid=2879 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts1 ses=1 comm="init" exe="/sbin/init" key="reboot

ここで、
uid – ユーザー ID を表します。
gid – グループ ID を表す
exe=”/sbin/init” – コマンドが実行されました


Cent OS
  1. ifconfig コマンドが見つからない – CentOS/RHEL 7

  2. CentOS / RHEL :すべての LVM コマンドをログに記録する方法

  3. auditd ログ ファイル /var/log/audit/audit.log のパスを変更する方法

  1. RHEL/CentOSでCtrl-Alt-Delキーを使用して再起動を無効にする

  2. CentOS/RHEL で /var/log/audit/audit.log ファイルのデフォルトのアクセス許可を変更する方法

  3. CentOS/RHEL で監査ログとメッセージ ファイルがローテーションしない

  1. 6 CentOS / RHEL 7 での便利な journalctl コマンドの例 (チート シート)

  2. CentOS/RHEL で Pstack コマンドを実行する方法

  3. CentOS/RHEL 6 でシステム ログに書き込まれた監査ログ エントリを停止する方法