可以指示审计服务,将审计队列中的部分或全部审计记录复制到 syslog 实用程序。如果记录二进制审计数据和文本摘要,二进制数据将提供完整的审计记录,而摘要将筛选数据以供实时查看。
开始之前
要配置 audit_syslog 插件,您必须是指定有 "Audit Configuration"(审计配置)权限配置文件的管理员。要配置 syslog 实用程序并创建 auditlog 文件,您必须承担 root 角色。
# auditconfig -setplugin audit_syslog \ active p_flags=lo,+as,-ss
此项包括日志文件的位置。
# cat /etc/syslog.conf … audit.notice /var/adm/auditlog
# touch /var/adm/auditlog
# chmod 640 /var/adm/auditlog
# svcs system-log STATE STIME FMRI online Nov_27 svc:/system/system-log:default disabled Nov 27 svc:/system/system-log:rsyslog
# svcadm refresh system/system-log:default
审计服务在刷新时将读取审计插件的更改。
# audit -s
审计服务可生成大量输出。要管理日志,请参见 logadm(1M) 手册页。
在以下示例中,syslog 实用程序收集预选的审计类的子集。pf 类是在Example 3–15 中创建的。
# auditconfig -setnaflags lo,na # auditconfig -setflags lo,ss # usermod -K audit_flags=pf:no jdoe # auditconfig -setplugin audit_syslog \ active p_flags=lo,+na,-ss,+pf
auditconfig 命令的参数指示系统收集所有登录/注销、无归属事件以及系统状态审计记录的更改。audit_syslog 插件项指示 syslog 实用程序收集所有登录、成功的无归属事件以及失败的系统状态更改。
对于 jdoe 用户,该二进制实用程序会收集对 pfexec 命令的成功和失败调用。syslog 实用程序收集对 pfexec 命令的成功调用。
示例 4-12 将 syslog 审计记录放置在远程系统上可以更改 syslog.conf 文件中的 audit.notice 项,使其指向远程系统。在本示例中,本地系统的名称为 sys1.1。远程系统是 remote1。
sys1.1 # cat /etc/syslog.conf … audit.notice @remote1
在 remote1 系统上,syslog.conf 文件中的 audit.notice 项指向日志文件。
remote1 # cat /etc/syslog.conf … audit.notice /var/adm/auditlog