Linux 服务器安全审计工具

下面开始这个Auditd新年版审计工具的介绍。安全防护是首先要考虑的问题。为了避免别人盗取我们的数据,我们需要时刻关注它。安全防护包括很多东西,审计是其中之一。

我们知道Linux系统上有一个叫 auditd 的审计工具。这个工具在大多数Linux操作系统中是默认安装的。那么auditd 是什么?该如何使用呢?下面我们开始介绍。

Linux 服务器安全审计工具

什么是auditd?

auditd(或 auditd 守护进程)是Linux审计系统中用户空间的一个组件,其负责将审计记录写入磁盘。

安装 auditd

Ubuntu系统中,我们可以使用 wajig 工具或者 apt-get 工具 安装auditd。

Linux 服务器安全审计工具

按照下面的说明安装auditd,安装完毕后将自动安装以下auditd和相关的工具:

auditctl : 即时控制审计守护进程的行为的工具,比如如添加规则等等。

/etc/audit/audit.rules : 记录审计规则的文件。

aureport : 查看和生成审计报告的工具。

ausearch : 查找审计事件的工具

auditspd : 转发事件通知给其他应用程序,而不是写入到审计日志文件中。

autrace : 一个用于跟踪进程的命令。

/etc/audit/auditd.conf : auditd工具的配置文件。

首次安装 auditd 后, 审计规则是空的。

可以使用以下命令查看:

$ sudo auditctl -l

以下我们介绍如何给auditd添加审计规则。

如何使用auditd Audit 文件和目录访问审计

我们使用审计工具的一个基本的需求是监控文件和目录的更改。使用auditd工具,我们可通过如下命令来配置(注意,以下命令需要root权限)。

文件审计

$ sudo auditctl -w /etc/passwd -p rwxa

选项 :

-w path : 指定要监控的路径,上面的命令指定了监控的文件路径 /etc/passwd

-p : 指定触发审计的文件/目录的访问权限

rwxa : 指定的触发条件,r 读取权限,w 写入权限,x 执行权限,a 属性(attr)

目录审计

使用类似的命令来对目录进行审计,如下:

$ sudo auditctl -w /production/

以上命令将监控对 /production 目录 的所有访问。

现在,运行 auditctl -l 命令即可查看所有已配置的规则。

下面开始介绍审计日志。

查看审计日志

添加规则后,我们可以查看 auditd 的日志。使用 ausearch 工具可以查看auditd日志。

我们已经添加规则监控 /etc/passwd 文件。现在可以使用 ausearch 工具的以下命令来查看审计日志了。

$ sudo ausearch -f /etc/passwd

-f 设定ausearch 调出 /etc/passwd文件的审计内容

下面是输出 :

time->Mon Dec 22 09:39:16 2014

type=PATH msg=audit(1419215956.471:194): item=0 name="/etc/passwd" inode=142512 dev=08:01 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=NORMAL

type=CWD msg=audit(1419215956.471:194): cwd="/home/pungki"

type=SYSCALL msg=audit(1419215956.471:194): arch=40000003 syscall=5 success=yes exit=3 a0=b779694b a1=80000 a2=1b6 a3=b8776aa8 items=1 ppid=2090 pid=2231 auid=4294967295 uid=1000 gid=1000 euid=0 suid=0 fsuid=0 egid=1000 sgid=1000 fsgid=1000 tty=pts0 ses=4294967295 comm="sudo" exe="/usr/bin/sudo" key=(null)

下面开始解读输出结果。

time : 审计时间。

name : 审计对象

cwd : 当前路径

syscall : 相关的系统调用

auid : 审计用户ID

uid 和 gid : 访问文件的用户ID和用户组ID

comm : 用户访问文件的命令

exe : 上面命令的可执行文件路径

以上审计日志显示文件未被改动。

以下我们将要添加一个用户,看看auditd如何记录文件 /etc/passwd的改动的。

time->Mon Dec 22 11:25:23 2014

type=PATH msg=audit(1419222323.628:510): item=1 name="/etc/passwd.lock" inode=143992 dev=08:01 mode=0100600 ouid=0 ogid=0 rdev=00:00 nametype=DELETE

type=PATH msg=audit(1419222323.628:510): item=0 name="/etc/" inode=131073 dev=08:01 mode=040755 ouid=0 ogid=0 rdev=00:00 nametype=PARENT

type=CWD msg=audit(1419222323.628:510): cwd="/root"

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/0a6680b221f95ede6cfbc9bb86d7b287.html