在 Oracle® Solaris 11.2 中管理审计

退出打印视图

更新时间: 2014 年 7 月
 
 

如何更新已登录用户的预选掩码

本过程介绍如何审计已登录用户的系统范围审计预选掩码的更改。您通常可以通过指示用户注销并重新登录来完成此任务。或者,以指定有 "Process Management"(进程管理)权限配置文件的角色,可以使用 kill 命令手动终止活动会话。新的会话将继承新的预选掩码。

但是,终止用户会话可能是不可行的。作为备选方案,您可以使用 auditconfig 命令动态更改各个已登录用户的预选掩码。

在以下过程中,假定已通过运行以下命令将系统范围审计预选掩码从 lo 更改为 lo,ex

# auditconfig -setflags lo,ex

开始之前

您必须是指定有 "Audit Configuration"(审计配置)权限配置文件的管理员。要终止用户会话,您必须是指定有 "Process Management"(进程管理)权限配置文件的管理员。有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全 中的使用所指定的管理权限

  1. 列出登录的一般用户及其进程 ID。
    # who -a
    jdoe  - vt/2         Jan 25 07:56  4:10   1597   (:0)
    jdoe  + pts/1        Jan 25 10:10   .     1706   (:0.0)
    ...
    jdoe  + pts/2        Jan 25 11:36  3:41   1706   (:0.0)
  2. 为便于以后进行比较,显示每个用户的预选掩码。
    # auditconfig -getpinfo 1706
    audit id = jdoe(1234)
    process preselection mask = lo(0x1000,0x1000)
    terminal id (maj,min,host) = 9426,65559,mach1(192.168.123.234)
    audit session id = 103203403
  3. 通过运行下面的一个或多个命令,修改相应的预选掩码:
    # auditconfig -setpmask 1706 lo,ex         /* for this process */
    
    # auditconfig -setumask jdoe lo,ex         /* for this user */
    
    # auditconfig -setsmask 103203403 lo,ex    /* for this session */
    
  4. 验证用户的预选掩码是否已更改。

    例如,检查更改掩码之前存在的进程。

    # auditconfig -getpinfo 1706
    audit id = jdoe(1234)
    process preselection mask = ex,lo(0x40001000,0x40001000)
    terminal id (maj,min,host) = 9426,65559,mach1(192.168.123.234)
    audit session id = 103203403