IBM® AIX® V6.1 引入了基于软件的分区技术:工作负载分区(Workload Partitions,WPAR)。本文举例概述了 WPAR 环境中的审计子系统,包括:全局审计、WPAR 审计和起始于全局的 WPAR 审计。此外,本文还介绍了审计报告工具,通过它可以查看审计记录。

Kavitha Ramalingam, 助理软件工程师, WSO2 Inc

Kavitha Ramalingam 是 IBM AIX WPAR 小组的一名开发人员。在过去的 10 年中,她致力于 WPAR、TCP/IP、NFS 等领域的 AIX 的支持、测试和开发项目。Kavitha 获得了 Madras University,India 计算机科学与工程的学士学位。



Vijaya Sekhar Mekala, 系统软件工程师, WSO2 Inc

Vijay 从事 AIX FVT 已有三年。Vijay 获得了 SK University 计算机科学与工程的学士学位。



Rajeev Mishra, 高级软件工程师, WSO2 Inc

Rajeev Mishra 从事 AIX 内核开发长达 12 年。在此期间,他致力于很多核心技术的研究,比如 WLM、WPAR、VMM、Loader 和 Sysproc,并做出了自己的贡献。现在,他是 WPAR 开发小组的组长。



2008 年 12 月 04 日

您可以通过访问“AIX 6 资源中心”来了解其他和 AIX 6 相关的内容:

简介

AIX 支持审计子系统,它使系统管理员能够记录维护系统安全所需的信息。可审计的事件是指发生在系统上的任何与系统安全有关的事件。审计核心就是检测可审计事件、收集与该事件有关的信息,然后处理信息以检查审计跟踪并定期生成报告。审计子系统还提供了监控审计跟踪的特性,并就安全威胁发出即时警报。


审计模式

我们将讨论以下两个审计模式:

  • 二进制模式
  • 流模式

二进制模式

在二进制模式中,事件记录在两个二进制文件中。这两个二进制文件用于确保在处理审计记录时审计子系统总能够记录东西。

图 1. 二进制模式
二进制模式

流模式

在流模式中,记录是由审计伪设备(在处理记录时)同步记录的。

图 2. 流模式
流模式

审计类型

事件审计

可以审计的事件全部都呈现在 /etc/security/audit/events 文件中。所有这些事件形成了库事件类。AIX 内部有大约 300 个不同的库事件。而分组库事件就会形成审计类。审计类的名称是随机分配的。

事件审计通常都与一个用户 ID 相关联。对用户的类分配在用户下次登陆时生效。类在 /etc/security/audit/config 文件中与用户相关联。支持的类的数量最多为 32,包括 ALL。

对象审计

审计对象是指在 /etc/security/audit/objects 文件中定义的单个文件。与事件审计不同,对象不与用户相关联。这些文件的审计操作有三个:读、写和执行。


审计子系统

审计子系统主要发挥以下功能:

  • 检测事件
  • 收集事件
  • 处理审计记录

可审计事件是那些违反了安全策略和/或系统访问权限的事件,以及系统安全状态发生的任何改变。例如,对认证文件执行的操作(读/写)以及访问系统都被认为是可审计事件。这种事件会生成一个审计记录,该记录会被传入到内核日志记录例程,储存后进行分析。

命令描述
/etc/security/audit/events系统支持的所有文件的集合
/etc/security/audit/bincmds包含 auditbin 后端命令
/etc/security/audit/streamcmds包含 auditstream 命令
/etc/security/audit/objects对象事件的集合
/etc/security/audit/config审计系统的配置文件

AIX 审计子系统支持的审计类型有:

  • 全局系统审计。事件依照配置文件 /etc/security/audit/config 收集,并记录在全局系统。
  • WPAR 审计。事件依照 WPAR 配置文件 /etc/security/audit/config 收集,并记录在 WPAR 系统内部。
  • 起始于全局的 WPAR 审计。WPAR 事件依照全局系统配置系统收集,并记录在全局系统。

WPAR 审计与全局系统审计

就像在传统 AIX 系统中一样,您可以在一个系统 WPAR 内,或是一个全局 WPAR 内启用审计。应用程序 WPAR 审计是在 WPAR 内部停用的。但是,应用程序 WPAR 可以从全局 WPAR 进行审计。

audit 命令用于启动审计子系统。

audit {start | shutdown | on | off }.

其中:

start启动审计子系统
shutdown停止审计子系统
on恢复审计子系统
off暂停审计子系统

事件审计

系统管理员可以更改配置文件,从而只审计特定用户的某些具体事件。

例如,假设 WPAR 管理员有意收集根目录的通用类事件,以及 tmpuser 的文件类事件,配置文件会是这样:

start:
        binmode = on
        streammode = on

bin:
        trail = /audit/trail
        bin1 = /audit/bin1
        bin2 = /audit/bin2
        binsize = 10240
        cmds = /etc/security/audit/bincmds
        freespace = 65536

stream:
        cmds = /etc/security/audit/streamcmds

classes:
	general=USER_SU,PASSWORD_Change,FILE_Unlink,FILE_Link,FILE_Rename,
FS_Chdir,FS_Mkdir,FS_Rmdir files = FILE_Open,FILE_Read,FILE_Write,
FILE_Close,FILE_Link,FILE_Unlink,FILE_Rename

users:
        root = general
        tmpuser = files

对象审计

配置文件 /etc/security/audit/objects 包含系统要审计的对象的列表。如果系统管理员想要审计 /etc/security/passwd 文件的所有读、写操作,则必须向 /etc/security/audit/objects 文件添加以下输入项:

 /etc/security/passwd:
        r = "S_PASSWD_READ"
        w = "S_PASSWD_WRITE"

起始于全局的 WPAR 审计

WPAR 事件在全局系统上依照全局系统配置收集。在启动 WPAR 审计前必须先启动全局系统审计。

事件审计

必须将所有需要进行 WPAR 审计的类添加到 WPARS 下的配置文件中。

WPARS:
	Wpar name = <class name1>, <class name2> …

全局系统收集选定的 WPAR 的选定事件,并将它们记录在全局系统审计跟踪中。

例如,假设全局系统管理员想要审计 wpar1 的 “通用” 类事件以及 wpar2 的 “文件” 类事件,配置文件应该是这样:

start:
        binmode = <on/off>
        streammode = <on/off>

bin:
        trail = /audit/trail
        bin1 = /audit/bin1
        bin2 = /audit/bin2
        binsize = 10240
        cmds = /etc/security/audit/bincmds
        freespace = 65536

stream:
        cmds = /etc/security/audit/streamcmds

classes:
general = USER_SU,PASSWORD_Change,FILE_Unlink,FILE_Link,FILE_Rename,FS_Chdir
files = FILE_Open,FILE_Read,FILE_Write,FILE_Close,FILE_Link,FILE_Unlink,FILE_Rename,

users:
root = general 
	
WPARS:
wpar1 = general
wpar2 = files

对象审计

要审计的对象必须添加到 /etc/security/audit/objects 文件。同样,必须将 WPAR 添加到 “WPARS” 下的 /etc/security/audit/config 文件中。

如果系统管理员想要审计 wpar1 的 /etc/security/passwd 文件和 wpar2 的 /wpars/wpar2/ etc/security/limits 文件,则必须向 /etc/security/audit/objects 文件输入以下内容:

带有绝对路径和操作(读、写和执行)的 wpar1 文件
/wpars/wpar1/etc/security/passwd:
 r = ”S_WPAR_PASSWD_READ”
w = "S_WPAR_PASSWD_WRITE"
带有绝对路径和操作(读、写和执行)的 wpar2 文件
/wpars/wpar2/ etc/security/limits:
  w = "S_WPAR_LIMITS_WRITE"

同样,必须将 wpar1 和 wpar2 添加到 “WPARS” 下的 /etc/security/audit/config 文件中。

WPARS:
  	wpar1 = general
       wpar2 = general

可以使用 Audit 命令 表格中提到的命令来启动或停用审计。


审计记录工具(auditpr)

auditpr 命令从标准输入/文件(审计跟踪、流设备)中读取二进制和流格式的记录,并将可读的格式化记录发送到标准输出。例如,以下的命令可以读取系统审计跟踪文件,并显示出带有默认标题题目和字段的审计记录。

/usr/sbin/auditpr  -v < /audit/trail
auditpr < /audit/trail
event        login    status   time                     command       wpar name
----------- -------- ----------- --------------------- ------------ -------------------
FS_Mkdir    root     OK       Fri Oct 19 04:13:13 2007 mkdir         testwpar
FS_Rmdir    root     OK       Fri Oct 19 04:13:14 2007 rmdir         testwpar
FILE_Read   tmpuser  OK       Fri Oct 19 04:13:20 2007 ksh           testwpar
FILE_Open   tmpuser  FAIL     Fri Oct 19 04:13:20 2007 test          testwpar
FILE_Close  tmpuser  FAIL     Fri Oct 19 04:13:20 2007 tes           testwpar

审计命令

命令描述
audit start 启用审计。
audit start -@ <wparname1> -@ <wparname2>从全局 WPAR 启用 WPAR 审计。
audit shut停用审计。
audit shut -@ <wparname1> -@ <wparname2>从全局 WPAR 停用 WPAR 审计。
auditselect 选择满足所描述的标准的审计记录并写到标准输出。
auditcat从标准输入或特定输入文件中读取审计记录,并将其写入到标准输出文件或者管理员指定的输出文件中。
auditmerge合并两个不同的审计跟踪。
auditstream从伪设备 /dev/audit 中读取记录。
auditpr读取二进制格式和流格式的审计记录,并以可读格式显示记录。

结束语

WPAR 管理员可以接管审计子系统的任务,从而减轻全局管理员的压力。与此同时,全局管理员能够在不通知 WPAR 的情况下收集关于全局系统的 WPAR 审计信息。这样既可以从全局 WPAR 启用(起始于全局的 WPAR 审计)审计,又可以在系统 WPAR 内部启用(起始于 WPAR 的 WPAR 审计)审计。

参考资料

学习

获得产品和技术

  • IBM 试用软件:使用可直接从 developerWorks 下载的软件构建您的下一个开发项目。

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=AIX and UNIX
ArticleID=356480
ArticleTitle=AIX WPAR 审计
publish-date=12042008