16.5 管理事件审计

  由内核审计子系统写出的事件, 并不能以普通文本的形式加以修改或阅读。 这些数据以类似 ktrace(1)kdump(1) 那样的方式来存储和访问, 也就是说, 只能通过使用 praudit 命令执行转存操作才能察看它们; 审计账目可以通过 auditreduce 命令来减少, 它能够根据您感兴趣的属性, 例如用户、 事件发生的时间, 以及操作类型来选择查询记录。

  例如, praudit 能够将选定审计日志的完整内容, 转存为普通的文本文件。 要将整个审计日志转存, 可使用:

# praudit /var/audit/AUDITFILE

  这里 AUDITFILE 是希望查看的审计日志。 由于审计日志可能包含大量的数据, 管理员可能更希望选择某一特定用户的相关事件。 要达到这个目的, 可以使用下面的命令, 这里我们选择的用户是 trhodes

# auditreduce -e trhodes /var/audit/AUDITFILE | praudit

  这将选择保存在 AUDITFILE 中的所有由 trhodes 产生的审计日志。

  还有许多其他选项可以在阅读审计记录时使用。 请参见前述命令的联机书册, 以获得进一步的解释。

16.5.1 审计日志文件的轮转

  由于日志可靠性的要求, 审计计账只由内核写入, 且只能由 auditd 管理。 管理员不应尝试使用 newsyslog.conf(5) 或其它工具来完成审计日志的轮转工作。 您应使用 audit 管理工具来关闭审计、 重新配置审计系统, 并完成日志轮转。 下面的命令将让审计服务创建新的审计日志, 并发信号给内核要求其使用新的日志。 旧日志将终止并被改名, 此时, 管理员就可以操作它了。

# audit -n

警告: 如果 auditd 服务程序没有在运行, 则前述命令将失败并给出错误提示。

  在 /etc/crontab 加入如下设置, 将使 cron(8) 每十二小时将日志轮转一次。

*     */12       *       *       *       root    /usr/sbin/audit -n

  这些修改会在您保存 /etc/crontab 后生效。

16.5.2 为其它用户指派审计复审权限

  默认情况下, 只有 root 用户拥有读取系统审计日志的权限。 但您也可以将这种权限通过 audit 组的成员身份来指定给其它用户, 因为审计目录和记账文件都是属于这个组的, 而且是同组可读的。 由于阅读审计日志的内容会提供关于用户和进程的大量行为信息, 强烈建议在指派这一权限时谨慎行事。

本文档和其它文档可从这里下载:ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读文档,如不能解决再联系<[email protected]>.
关于本文档的问题请发信联系 <[email protected]>.