auditctl -a never,task 的目的是什么?

auditctl -a never,task 的目的是什么?

我发现每当我启动一个新的 ec2 服务器时,默认规则为auditctl

auditctl -a never,task

制定这条规则的目的是什么?

答案1

man auditctl

  -a [list,action|action,list]

          task        Add a rule to the per task list. This rule  list  is
                      used  only  at  the  time  a task is created -- when
                      fork() or clone() are called  by  the  parent  task.
                      When  using  this  list,  you should only use fields
                      that are known at task creation time,  such  as  the
                      uid, gid, etc.

          never       No audit records will be generated. This can be used
                      to suppress event generation. In general,  you  want
                      suppressions  at  the top of the list instead of the
                      bottom. This is because the event  triggers  on  the
                      first matching rule.

因此,这将停止fork()生成clone()审核日志,否则可能会导致额外的 CPU 负载以及 I/O 和磁盘使用。

答案2

此规则可防止所有其他规则被审计解析。

  • 任务是分配审计上下文并将其链接到数据结构时的第一步。

  • 审核从创建的第一个规则到最后一个规则解析其规则,如果满足规则则退出(例如,-a never,task这意味着不审核从任务创建到任务退出的任何内容)

  • 它确实提供了更好的性能,但它完全关闭了系统调用审核

如需进一步阅读,我建议查看github 仓库

这里是定义默认情况下禁用auditd的规则

相关内容