Linux システムで auditd ロギングを有効にすると、大量のログが生成される可能性があります。一部のお客様は、特定のコマンド/SYSCALL に関連する auditd エントリを無効にしたい場合があります。たとえば、以下のエントリは auditd によって記録されています ( /var/log/messages )
type=CWD msg=audit(1464664627.639:1858714): cwd="/u01/app/oracle/emagent/12.1.0.3/agent_inst/sysman/emd" type=PATH msg=audit(1464664627.639:1858714): item=0 name="/u01/app/oracle/emagent/12.1.0.3/agent_inst/sysman/emd/upload/upload/stream0/" inode=17910851 dev=fc:03 mode=040740 ouid=1000 ogid=1001 rdev=00:00 type=PATH msg=audit(1464664627.639:1858714): item=1 name="/u01/app/oracle/emagent/12.1.0.3/agent_inst/sysman/emd/upload/upload/stream0/D_P4_S0_I174383.xml" inode=17913267 dev=fc:03 mode=0100640 ouid=1000 ogid=1001 rdev=00:00 type=SYSCALL msg=audit(1464664627.639:1858715): arch=c000003e syscall=87 per=400000 success=yes exit=0 a0=7f8b5c002180 a1=180 a2=7f8b5c002180 a3=7f8e9e1e3278 items=2 ppid=31951 pid=34940 auid=1075 uid=1000 gid=1001 euid=1000 suid=1000 fsuid=1000 egid=1001 sgid=1001 fsgid=1001 tty=(none) ses=17377 comm="java" exe="/u01/app/oracle/emagent/12.1.0.3/core/12.1.0.5.0/jdk/bin/java" key="delete" Customer would like to disable them as they are not necessary to be logged-in.
特定の auditd ロギング エントリの無効化
1. 最も簡単な方法は、たとえば Logging からパスを無効にすることです:
-W never,exclude -F path=/u01/app/oracle/emagent/12.1.0.3/ -k exclude
上記は、パス /u01/app/oracle/emagent/12.1.0.3/ が auditd によってログに記録されないように除外します
2. または、以下の例に従って個別のルールを無効にするだけです:
-W never,exclude -F exe=/u01/app/oracle/emagent/12.1.0.3/core/12.1.0.5.0/jdk/bin/java -k exclude -W never,exclude -F cwd=/u01/app/oracle/emagent/12.1.0.3/agent_inst/sysman/emd -k exclude -W never,exclude -F inode=17910851 -k exclude -W never,exclude -F inode=17913267 -k exclude
上記のエントリの例では、inode/exe/cwd などのオプションを使用しています
3. 上記のルールをすべて追加するために編集する必要があるファイルは、/etc/audit/audit.rules にあります。 .エントリの下の audit.rules にも必ずコメントしてください:
# Make the configuration immutable -- reboot is required to change audit rules #-e 2
4. 「-e 2」が有効になっている場合は、再起動が必要です。通常、auditd サービスを再起動するだけです:
# service auditd restart
auditd ルールの詳細と例については、auditctl の man ページを確認してください。
# man auditctlauditd を使用して syscall を監査する場合、特定のプロセスを除外できますか?
Auditd を使用して特定のユーザー、グループ、またはサービスを除外して syscall を監査する方法
ファイル/ディレクトリを auditd ルールから除外する方法
監査されたメッセージが /var/log/messages をいっぱいにする
Linux で SIGKILL または SIGTERM を使用して mysqld を強制終了しているプロセスを見つける方法