在 Oracle® Solaris 11.2 中管理审计

退出打印视图

更新时间: 2014 年 7 月
 
 

如何配置以相同方式审计所有区域

此过程可以实现以相同方式审计所有区域。该方法需要的计算机开销和管理资源最少。

开始之前

您必须承担 root 角色。有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全 中的使用所指定的管理权限

  1. 配置全局区域的审计。

      完成配置审计服务中的任务,但要注意以下例外:

    • 不要启用 perzone 审计策略。

    • 设置 zonename 策略。此策略将区域名称添加到每个审计记录。

      # auditconfig -setpolicy +zonename
  2. 如果修改了审计配置文件,请将这些文件从全局区域复制到每个非全局区域。

      如果修改了 audit_classaudit_event 文件,请采用以下两种方式之一复制它:

    • 可以回送挂载文件。

    • 可以复制文件。

    非全局区域必须在运行中。

    • 将更改的 audit_classaudit_event 文件作为回送文件系统 (lofs) 进行挂载。
      1. 从全局区域中,中止非全局区域。
        # zoneadm -z non-global-zone halt
      2. 为在全局区域中修改的每个审计配置文件创建一个只读回送挂载。
        # zonecfg -z non-global-zone
        zone: add fs
        zone/fs: set special=/etc/security/audit-file
        zone/fs: set dir=/etc/security/audit-file
        zone/fs: set type=lofs
        zone/fs: add options [ro,nodevices,nosetuid]
        zone/fs: commit
        zone/fs: end
        zone: exit
        #
      3. 要使更改生效,请引导该非全局区域。
        # zoneadm -z non-global-zone boot

        之后,如果在全局区域中修改了审计配置文件,请重新引导每个区域以刷新非全局区域中回送挂载的文件。

    • 复制文件。
      1. 在全局区域中,列出每个非全局区域中的 /etc/security 目录。
        # ls /zone/zonename/root/etc/security/
      2. 将更改的 audit_classaudit_event 文件复制到每个区域的 /etc/security 目录。
        # cp /etc/security/audit-file /zone/zonename/root/etc/security/audit-file

        之后,如果在全局区域中更改其中一个文件,则必须将更改的文件复制到非全局区域。

    当在全局区域中重新启动审计服务时,或者重新引导非全局区域时,将对非全局区域进行审计。

示例 3-17  在区域中挂载作为回送挂载的审计配置文件

在本示例中,系统管理员修改了 audit_classaudit_eventaudit_warn 文件。

audit_warn 文件仅在全局区域中读取,因此不必将其挂载到非全局区域。

在系统 machine1 中,管理员创建了两个非全局区域:machine1–webservermachine1–appserver。管理员已经完成了对审计配置文件的修改。如果管理员以后修改文件,必须重新引导区域以重新读取回送挂载。

# zoneadm -z machine1-webserver halt
# zoneadm -z machine1-appserver halt
# zonecfg -z machine1-webserver
webserver: add fs
webserver/fs: set special=/etc/security/audit_class
webserver/fs: set dir=/etc/security/audit_class
webserver/fs: set type=lofs
webserver/fs: add options [ro,nodevices,nosetuid]
webserver/fs: commit
webserver/fs: end
webserver: add fs
webserver/fs: set special=/etc/security/audit_event
webserver/fs: set dir=/etc/security/audit_event
webserver/fs: set type=lofs
webserver/fs: add options [ro,nodevices,nosetuid]
webserver/fs: commit
webserver/fs: end
webserver: exit
#

# zonecfg -z machine1-appserver
appserver: add fs
appserver/fs: set special=/etc/security/audit_class
appserver/fs: set dir=/etc/security/audit_class
appserver/fs: set type=lofs
appserver/fs: add options [ro,nodevices,nosetuid]
appserver/fs: commit
appserver/fs: end
appserver: exit

重新引导非全局区域时,audit_classaudit_event 文件在区域中为只读。