AIX系统中Audit系统的功能和概念,以及相关的命令

[转]AIX系统中Audit系统的功能和概念,以及相关的命令  

 

本文简要介绍了audit系统的功能和概念,以及相关的命令

一、AUDIT系统的概念:

audit子系统提供了一种纪录系统安全方面信息的方法,同时可以为系统管理员在用户违反系统安全法则或存在违反的潜在可能时,提供及时的警告信息,这些audit子系统所搜集的信息包括:可被审计的事件名称,事件状态(成功或失败),别的安全相关的信息。

AIX定义了一些可被审计的事件,可以在/etc/security/audit/events中找到,通常,这些事件都是定义在系统调用级别的。那么,一条命令可以产生多个事件,例如,如果用户通过cat或more命令来显示文件,可以在审计报告中发现下列事件:

FILE_Open(打开文件)
FILE_Read(读文件)
FILE_Write(写文件)
PROC_Create(产生进程cat或more)
PROC_Execute(执行命令)
PROC_Delete(进程执行完毕)

如果不加选择审计所有的事件会产生非常大量的数据,通过修改audit配置文件/etc/security/audit/config文件,可以选择需纪录的事件。

审计事件可以组成类,多个功能类似或相近的审计事件可以为它们定义一个类,类的定义也在/etc/security/audit/config中有,类的名字可以任意指定,类和用户UID是关联在一起的,需要对某用户定义其需要被事件的类。

审计对象是那些单个可以被审计的文件,能够审计的操作包括读、写和执行,审计对象和用户的UID不关联,只要这些文件被操作,不管是来自哪个用户,都可以产生审计纪录。审计对象在/etc/security/audit/objects中定义,如下:

/etc/security/environ:
        w = "S_ENVIRON_WRITE"
/etc/security/group:
        w = "S_GROUP_WRITE"
/etc/security/limits:
        w = "S_LIMITS_WRITE"
/etc/security/login.cfg:
        w = "S_LOGIN_WRITE"
/etc/security/passwd:
        r = "S_PASSWD_READ"
        w = "S_PASSWD_WRITE"
/etc/security/user:
        w = "S_USER_WRITE"
/etc/security/audit/config:
        w = "AUD_CONFIG_WR"

其中第一行为审计对象的文件名,第二行为输出的格式,该格式在/etc/security/audit/events中定义如下:

/etc/security/environ
        S_ENVIRON_WRITE = printf "%s"
/etc/group
        S_GROUP_WRITE = printf "%s"
/etc/security/limits
        S_LIMITS_WRITE = printf "%s"

用户可以自己在该文件中定义审计对象。

审计可以以两种模式运行:BIN和STREAM,BIN模式指的是audit将结果写入临时文件bins,然后在写入到一个单一的文件中去。STREAM模式指的是审计子系统通过伪设备文件/dev/audit将数据写入一个固定大小的文件,当写入数据超出时,最早写入的数据将被覆盖。

审计子系统可以以其中一种模式或两种模式启动。我们可以编辑审计子系统的配置文件/etc/security/audit/config来更改所用模式,如下:

start:
        binmode = on
        streammode = off
bin:
        trail = /audit/trail
        bin1 = /audit/bin1
        bin2 = /audit/bin2
        binsize = 10240
        cmds = /etc/security/audit/bincmds
stream:
        cmds = /etc/security/audit/streamcmds

可见,该系统使用的是bin模式,它使用了两个临时bins文件,bin1和bin2,它们的大小都是10240字节,当其中一个文件满了之后,子系统将打开另一个文件,并把前一个文件的纪录都转移到trail文件中,子系统停止时,这些bins中的内容将都被加入到trail文件中去,这些纪录的文件采用了二进制方式,可用命令auditpr查看。

在stream模式中,系统将通过调用/etc/security/audit/streamcmds命令来处理纪录,这条命令将把输出变成可读的格式写入文件/audit/stream.out中,audit系统重新启动时,它将被清空。所以,可以定时读它或将它的内容打印出来。

下面介绍一下审计子系统的控制命令: (关于命令的详细介绍还可以参考链接:http://www.kuqin.com/aixcmds/aixcmds1/audit.htm#a14294dd

启动和停止审计子系统 /usr/sbin/audit是控制审计子系统的基本命令,它有下列五条子命令:

  • audit start 激活审计子系统
    这是启动审计子系统的唯一正确方法
  • audit shutdown 停止审计子系统
    它将处理BIN模式下的bins临时文件,并删除/audit/auditb文件,这个文件是一个审计子系统是否活着的标识
  • audit off 暂时挂起审计子系统
  • audit on 挂起后重新激活审计子系统
  • audit query 显示子系统状态

如果不按顺序使用这些命令,审计子系统会被弄乱,如果出现这种状态,将/audit下的文件都删除(除去纪录文件train.stream.out, bin1, bin2等)

如希望在系统启动时启动审计子系统,可在/etc/rc中,在dspmsg rc.cat 5 'Multi-user initialization completed '行之前加入下行: /usr/sbin/audit start

如果审计子系统一直运行,那要确保系统关闭时它被正确地停止了,在/usr/sbin/shutdown中加入一行: /usr/sbin/audit/shutdown

配置审计子系统

审计子系统的配载文件为/etc/security/audit/config,它包含以下几段:

start: 按BIN或STREAM模式启动
bin and stream: BIN和STREAM的配置,在前简介文章中有介绍
classes: 定义的类。

预定义的类有:general, objects, SRC, kernel, files, SVIPC, mail, cron和TCPIP。例如general类的定义如下:

general = USER_SU,PASSWORD_Change,FILE_Unlink,FILE_Link, FILE_Rename,FS_Chdir,FS,PORT_Locked,PORT_Change,FS_Mkdir,FS_Rmdir

说明上述在/etc/security/audit/events中定义的事件被归类为general,用户可以自己编辑配置文件来修改类的定义,但所用事件需在/etc/security/audit/events中存在,类的定义要和用户联系在一起。

users: 该段中定义了使用类的用户。
用户必须是可登录用户或default用户,如下例:
users: root=general, joe=general,files,TCPIP default=general

当审计子系统启动后,系统将会对root用户发生的general事件做纪录,对joe用户发生的general,files,TCPIP事件做纪录,对别的用户,做general事件纪录。对审计对象而言,审计子系统启动是,会去监测/etc/security/audit/objects文件,对其中的有效文件开始做审计,无论哪个用户,包括root用户对它们的访问都会被纪录。

为一个用户更改审计类可以通过smit菜单执行
smit chuser * User NAME root
AUDIT classes []
选中相应类即可,或者直接编辑/etc/security/audit/config文件。

BIN文件可以通过下面命令来读取: #auditpr -v /audit/trail | more

结果如下:

BIN文件的输出表
event login status time command
FILE_Rename root OK 日 6月 29 12:02:07 2003 xntpd
frompath: /etc/ntp.drift.TEMP topath: /etc/ntp.drift
FS_Chdir root OK 日 6月 29 12:02:19 2003 ksh
change current directory to: /
FS_Chdir root OK 日 6月 29 12:05:20 2003 ksh
change current directory to: /

STREAM文件的输出可以直接读取如下: #more /audit/stream.out

STREAM文件的输出表
event login status time command
FS_Chdir root OK 日 6月 29 12:05:19 2003 ksh
FS_Chdir root OK 日 6月 29 12:05:20 2003 ksh
FILE_Unlink root OK 日 6月 29 12:05:29 2003 ksh

审计结果比较多的时候,可以通过下面的方法来过滤:
/usr/sbin/auditselect -f /audit/pick /audit/trail | /usr/sbin/auditpr -v

/audit/pick文件是手工编辑的,内容如下:
command == rlogin &&
time 〉= 08:00:00 && time 〈 = 17:00:00 &&
data 〉= 04/01/96 && date 〈 = 04/12/96

这个过滤器将只显示rlogin命令在指定的时间段和日期内的执行情况,指定的时间为每天的8AM到5PM,日期为96年四月一日至96年四月12日。

AUDIT系统一些常见错误如下:

  1. 运行audit start时报错:
    ** failed setting kernel audit objects
    这通常是由于/etc/security/audit/objects中的语法错误引起的。
  2. 错误信息:
    auditbin: ** failed backend command
    /etc/auditcat -p -o /audit/trail -r /audit/bin1
    这个错误可通过给BIN文件改名或删除来修正,有时停止并重启子系统也可以修正错误。
  3. 错误信息:
    Unable to find the user stanza in /etc/security/audit/config 如果对user段做了修改,请检查/etc/security/audit/config中的用户段,如为发现问题,仔细检查classes段,确保每个classes是在一个连续行中定义的。
时间: 2024-09-20 14:20:41

AIX系统中Audit系统的功能和概念,以及相关的命令的相关文章

win7系统中“清理桌面向导”功能的使用方法

win7系统中"清理桌面向导"功能的使用方法   桌面清理向导的开启方法: 1.首先单击开始,然后单击控制面板选项; 2.然后在控制面板中,单击"显示",显示属性对话框中,单击桌面选项卡,单击自定义桌面,这样桌面项目对话框就会出现了; 3.接着要在"桌面清理"下,如果不想让"清理桌面向导"每60天自动启动一次的话,可以单击清除每60天运行桌面清理向导的复选框; 4.最后单击现在出现的清理桌面"清理桌面向导"

如何在win7系统中打开写字板功能?

  必大家都是知道的吧,在咱们的win7 64位旗舰版下载系统中,自带有很多的小工具,小功能,这些特色的功能有时候能让咱们的操作变得更加的简单快捷.例如咱们win7旗舰版系统中的写字板功能,就特别的适合那些不喜欢打字,或者说不习惯使用输入法的用户.那么如何才能在咱们的win7旗舰版电脑中开启写字板功能呢?下面,小编就来详细的介绍一下吧! 第一种方法:首先,咱们单击打开win7旗舰版电脑的开始菜单,然后在开始菜单中依次点击所有程序-附件,在附件的弹出窗口中,咱们就可以找到写字板应用程序了,咱们直接

如何在win8系统中让系统自动记录下宽带账户及密码?

  我们知道,电脑是需要联网之后才能充分发挥出它的作用的,但是这也是一个很重要的问题,不少用户都觉得十分的麻烦,每次打开电脑,都需要手动去连接网络,这样才能实现上网.其实,咱们的Windows系统是十分智能的,只需要稍微设置一下,就可以实现电脑自动连接网络.下面,小编就来介绍一下,如何在win8系统中让系统自动记录下宽带账户及密码? 1.首先,咱们返回到win8系统的传统桌面位置,那后同时按下win8电脑键盘上的win+X快捷键打开电脑的快捷菜单,在打开的快捷菜单中,咱们点击选择控制面板选项.

Ubuntu系统中监控系统硬件的温度

Ubuntu系统中http://www.aliyun.com/zixun/aggregation/23104.html">监控系统硬件的温度 CPU sudo apt-get install sensors sudo sensors-detect 全部yes,然后重启 qii@ubuntu:~$ sensorsacpitz-virtual-0Adapter: Virtual devicetemp1:       +55.0°C  (crit = +111.0°C) coretemp-isa

如何使用Win8系统中的远程桌面功能

  远程桌面在之前的Windows系统中已经存有很长一段时间了,许多用户似乎忽略此功能,有时候电脑出现什么问题,用这个功能还是好方便的.下面在Windows8系统中教大家开启"远程桌面"功能. 操作步骤 选中桌面上的"计算机"右键选择"属性". 弹出"系统"窗口栏选择其左边的"高级系统设置". 打开"系统属性"选择"远程"勾选"允许远程连接此计算机"

在Windows8系统中利用家庭组功能共享文件和文件夹的方法

在Win8中沿用了Win7的家庭组功能,可以使用户在局域网中简便的分享文件与文件夹.设置方法也基本相同,下面就让我们来看看Win8中利用家庭组功能共享文件和文件夹是如何实现的. 如果你是技术帝或者已经非常清楚Win7家庭组的使用方法,可以直接飘过. 首先,Win+X命令菜单之后,打开控制面板 - 选择家庭组和共享选项. 如果局域网中没有人曾创建过家庭组,那我们自己就来创建一个,单击"创建家庭组" - 下一步 - 下一步.创建完毕之后,系统会自动弹出一个默认的家庭组密码,我们把它记下来!

Win7系统中的控制面板三大功能应用技巧介绍

控制面板是Windows图形用户界面一部分,允许用户查看并操作基本的系统设置和控制,也是大家接触较多的系统界面.在win7操作系统中,微软对控制面板有着较多的改进设计,很多刚开始使用win7的用户多少有点生疏.今天,我们来介绍一下win7控制面板方面的使用技巧. 在win7系统中,控制面板一般以类别的形式来显示功能菜单,分为系统和安全.用户帐户和家庭安全.网络和Internet.外观和个性化.硬件和声音.程序等类别,在每个类别下显示一些常用功能. 一.巧妙利用查看方式 对于习惯XP系统的用户,刚

在win8.1系统中如何找到库功能(默认是不显示的)

  库功能的使用是从win7系统开始的,它将相同类型的文件集合到同一个文件夹,给系统用户使用带来了很多方便.于是在win8.1系统中,很多用户在找寻win8.1系统是否也有库功能,答案是有的,只是被系统隐藏了. 以下是找回win8.1库的步骤 1.首先进入"这台电脑"然后打开"文件资源管理器"; 2.点击窗口顶部菜单栏中的"查看",如下图所示; 3.然后我们在"导航窗格"的下拉菜单中,选中选择"显示库",如

linux系统中的批量删除文件与空文件删除的命令介绍

本章为大家详细的整理了,在linux系统中批量删除文件和空文件删除的命令,请大家"对症下药" linux下面删除文件或者目录命令rm(remove) 功能说明:删除文件或目录. 语 法:rm [-dfirv][--help][--version][文件或目录...] 补充说明:执行rm指令可删除文件或目录,如欲删除目录必须加上参数"-r",否则预设仅会删除文件. 参 数: -d或--directory 直接把欲删除的目录的硬连接数据删成0,删除该目录. -f或--f