如何审核重启?

如何审核重启?

简单快速的问题:如何使用 auditd 记录系统重启?我尝试使用重启系统调用,但没有成功。我可以想象,在实际系统调用之前,审计守护进程就已经停止了。

然后我在 /sbin/reboot 上设置了一个钩子。但这是 /bin/systemctl 的符号链接。即使监控每个系统调用,当我重新启动系统时,auditd 也不会记录任何内容……

我如何使用 auditd 实际监控重启?

编辑:我注意到一件事:我将审计配置为直接发送到系统日志,这样可以节省到文件。/var/log/audit/audit.log 中提到了重新启动,但 syslog 文件中没有。这是怎么发生的?谢谢。

答案1

在 Linux 中,您必须auditd运行守护进程。我相信它通常是默认的。

# this will work for both the older sysinit linux as well as newer systemd linux

service auditd [start | stop | status]

我相信,默认audit.conf文件audit.rules将提供足够的信息,/var/log/audit/audit.log以便人们可以轻松识别重新启动。因此,您不必手动添加任何特殊审计规则。

原始 Linux 审计日志...是原始的...不易被人类阅读。日期采用纪元格式。但是如果你这样做

service auditd stop
rm /var/log/audit/audit.log
service auditd start
reboot

login in
immediately edit audit.log to see what happened before it fills up making it harder to see

该 audit.log 的开头将准确显示重新启动时记录的内容以及启动时发生的情况。您应该能够轻松识别它,它将全部位于新 audit.log 文件的顶部。它可能会超过 50 行,我知道它使用的是 rhel 7。我不确定您是否可以通过 audit.log 中的一行识别重新启动。

我不确定原始审计日志语法是否因 Linux 发行版而异,它可能因不同的审计版本而异。这就是为什么最好专门查看您的系统以了解它是什么。

为了处理审计日志中的该纪元日期:

https://unix.stackexchange.com/questions/2987/how-do-i-convert-an-epoch-timestamp-to-a-human-readable-format-on-the-cli

相关内容