如何在CentOS上配置基于主机的入侵检测系统?

 

任何系统管理员想要在其生产服务器上最早部署的安全措施之一就是检测文件篡改的机制――不法分子篡改的不单单是文件内容,还有文件属性。node

AIDE(全称“高级入侵检测环境”)是一种基于主机的开源入侵检测系统。AIDE经过检查许多文件属性的不一致性来检查系统二进制文件和基本配 置文件的完整性,这些文件属性包括权限、文件类型、索引节点(inode)、连接数量、连接名称、用户、用户组、文件大小、块计数、修改时间、访问时间、 建立时间、访问控制列表(acl)、SELinux安全上下文、xattrs以及md5/sha校验和。linux

AIDE经过扫描一台(未被篡改)的Linux服务器的文件系统来构建文件属性数据库。而后,它对照该数据库,检查服务器的文件属性,而后在服务 器运行时,一旦索引文件出现任何更改,就发出警告。正是因为这个缘由,每当因为正当缘由而更新系统或更改配置文件后,AIDE必须从新为受保护的文件编制 索引。web

对某些客户而言,他们的安全策略可能要求在服务器上安装某种入侵检测系统(IDS)。但不管客户是否是要求IDS,系统管理员部署IDS都是个好的作法。正则表达式

在CentOS或RHEL上安装AIDE

AIDE的初始安装(以及首次运行)最好是在刚安装操做系统的系统上进行,没有任何服务暴露在互联网、甚至暴露在局域网面前。在这个早期阶段,我 们能够未来自外部的一切闯入和篡改行为这种风险降到最低限度。事实上,这也是确保系统在AIDE构建其初始数据库时很干净的惟一途径。数据库

因为这个缘由,咱们在使用# yum install aide这个命令安装AIDE后,须要将咱们的机器从网络断开,并执行一些基本的配置任务,以下所述。安全

配置AIDE

默认配置文件位于/etc/aide.conf。该文件提供了几个示例保护规则(好比FIPSR、NORMAL、DIR和DATAONLY),每一个规则后面跟着一个等号以及要检查的文件属性列表,或者任何预约义规则(用+分隔)。你也可使用这种格式定义任何自定义规则。服务器

FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256网络

NORMAL = FIPSR+sha512ide

好比说,上述例子意味着,NORMAL规则将检查下列属性方面的不一致性:权限(p)、索引节点(i)、连接数量(n)、用户(u)、用户组 (g)、大小(s)、修改时间(m)、建立时间(c)、访问控制列表(acl)、SELinux(selinux)、xattrs(xattr)以及 SHA256/SHA512校验和(sha256和sha512)。spa

定义的规则能够灵活地用于不一样的目录和文件(用正则表达式表示)。

条目前面的感叹号(!)告诉AIDE忽略子目录(或目录里面的文件),可针对子目录定义另外一个规则。

在上面这个例子中,PERMS是面向/etc及其子目录和文件的默认规则。然而,没有规则会应用于/etc中的备份文件(即/etc/.*~), 也不会应用于/etc/mtab文件。对于/etc中一些选择性的子目录或文件而言,而是应用NORMAL规则,替代默认规则PERMS。

定义合适的规则,并将其应用到系统中的合适位置,这是使用AIDE过程当中最困难的部分,但运用良好的判断力是个好的开端。一个经验法则是,别检查 没必要要的属性。好比说,检查/var/log或/var/spool里面的文件的修改时间确定会致使大量误报,由于有许多应用程序和守护进程经常将内容写 入到这些位置。此外,检查多个校验和可能会增强安全性,不过代价是AIDE运行时间延长了。

另外,若是你使用MAILTO变量来指定电子邮件地址,能够将检查结果发送到你的邮箱。将下面这一行放入到/etc/aide.conf中的任何位置。

相关文章
相关标签/搜索