对许多CentOS 5.x盒子进行configuration合规性审核

  • 现在的情况

我有一个客户端,其中有许多(200x)CentOS 5.x服务器,部署在各种网站,邮件,数据库和文件服务器angular色中,这些服务器已经有不同程度的pipe理。

所有的盒子都有作为基本安装包含的EPEL存储库,所有的盒子都有“yum -y update”经常运行的cron作业,并且在内核可用的时候重新启动。 (所以他们没有处于可怕的状态)

对于networking,本地和外部漏洞 – 我们使用第三方公司,他们使用WebInspect来监控面向外部端口和易受攻击的服务,并向我的老板发送各种定期报告。 (因此我们现在没有看Nessus,OpenVAS或基于networking的扫描工具,或者实际上是任何漏洞工具)

  • 新的大老板镇 – 是一个前安全合规的家伙

新规则是; 如果它没有经过定期的testing,那么即使符合规定,也不符合规定。

(说实话,我很喜欢这个规则)

所以现在我正在寻找一种方法来定期生成服务器符合所有框的合规性标准的报告。

我们有117个configuration设置项目列表,这是各种合规性build议的较弱forms,所以我相信大多数合规性基准(如CIS,EAL3或STIG级别)就足够了。

我们在CentOS上安装了厨师,因此我可以推出基于yum的软件包(我可以从源代码安装,但是这会让我哭)

  • 想拥有…

我想在每个CentOS盒子上有一个本地运行的工具,并且会产生一个关于configuration合规性的相当全面的html报告(而且一个巨大的好处是发送严重问题的电子邮件警报,但是如果需要,我可以编写脚本)

理想情况下,我可以生成一个每周报告,表明符合一个或多个公认的Linux服务器基准。

我很高兴支付清单的订阅,但我怀疑我看到每种100美元的许可证会打击我的预算。

一些进展…

我看到SCAP和OVAL在基于CentOS或EPEL的工具中,例如

  • OpenSCAP-utils的
  • 奥瓦尔迪 – 椭圆形参考翻译

NIST为RHEL桌面提供SCAP内容,比较接近;
http://usgcb.nist.gov/usgcb/rhel_content.html

但我真的很想说,这是一个已知的标准,这里是报告…

一些进一步的进展

在fedora仓库中有一个名为sectool的工具,但是由于缺lesspython-slip模块,我无法在CentOS上运行它。

看起来最后一次提交是在几年前,作者已经开始在openscap-utils项目上工作,还依赖于PolicyKit和CentOS 5.x框中没有的其他一些东西。

我没有使用厨师,但我已经使用cfengine相当多。 所以虽然我没有针对你的环境的具体build议,但我可以总体告诉你我是如何处理的。 我希望你可以做一些类似的厨师,傀儡,或其他任何东西。

首先,让我说在我看来,如果你使用厨师(或任何其他configurationpipe理软件包)只推包,那么你错过了许多function,可以让你的生活更轻松。 井更深入。

在我pipe理的环境中,我设置了cfengine,不仅可以安装/删除软件包,还可以在所有服务器上,跨一个或多个类似服务器的子组或特定服务器维护特定的(并经常与安全相关的)设置主机,根据需要。

这为我做了几件事 –

首先,如果我启动一个新的服务器,那么一旦它被添加到configurationpipe理中,所有常用和特定组设置都将自动应用。 这意味着我不必担心基本locking – 它是自动完成的 – 我可以专注于locking该服务器独有的应用程序。 这就像一个自检清单,但更好。

其次,我可以查看日志并查看每台主机上configuration的运行结果,包括哪些设置被validation为正确,以及哪些设置不正确和修复。 这可以让我保持最新状态,但更重要的是,我可以parsing这些信息并生成报告,certificate服务器不仅按预期configuration,而且在每次configuration运行时都被validation为正确。

这也有一个副作用,让你知道你的configuration因为什么原因意外地改变,无论是粗心的同事,还是已经危害你的系统的攻击者。

所以,虽然这可能不是你在短期内寻找的答案,也许它会给你一些想法,包括在你的长期计划。