我的任务是强化我们公司的 Linux 服务器。其中一个问题是日志存储在服务器上,这会带来两个问题:
- 难以汇总和诊断问题
- 不太安全,如果服务器受到威胁,则日志可能会被删除或操纵。
为了解决这两个问题,计划是将生产环境生成的所有日志转发到安全的集中式日志服务器。
我将使用 OSSEC HIPS 进行入侵检测。据我所知,OSSEC 会从其节点收集日志,从而提供日志集中化和 IDS 监控;这实际上是一举两得。
我想知道的是,我是否应该使用其他工具来转发和存储 rsyslog 之类的日志,或者这是否是过度的,而 OSSEC 足以在中央日志服务器上保留所有日志 X 时间。
答案1
不算过分。将系统日志发送到另一台主机(rsyslogd 可以做到)是一种非常好的做法。
OSSEC 代理很有价值,但不适合用于系统日志转发。OSSEC 仅存储它认为有趣的特定错误。对于事后分析,您需要更多,您需要完整的日志。
使用 OSSEC 代理,因为它提供监控二进制修改、rootkit 检测和类似 fail2ban 的功能(又名主动响应)。
答案2
OSSEC 的功能远不止 rsyslog。我认为,首先要设置 rsyslog 或 syslog-ng 以实时将日志事件发送到场外(或者至少发送到攻击者入侵服务器后难以到达的服务器)。设置起来非常简单。然后设置 HIDS 解决方案。OSSEC 的功能远不止日志聚合。
以下是OSSEC的功能列表:http://ossec-docs.readthedocs.org/en/latest/manual/non-technical-overview.html我现在正在研究 OSSEC。查看了 Stealth 文件完整性检查器,它最初看起来非常好,因为客户端上没有安装任何东西,而且实际上客户端上几乎没有被监控的痕迹。不过 Stealth 也有一些缺点,很快就会显现出来。我目前正在写一篇关于这一切的博客文章,所以如果你需要更多帮助,请大声说出来。我会发到http://blog.binarymist.net