将审计日志发送到 SYSLOG 服务器

将审计日志发送到 SYSLOG 服务器

我正在运行几个基于 RHEL 的系统,它们利用 2.6 内核中的审计功能来跟踪用户活动,我需要将这些日志发送到集中式 SYSLOG 服务器进行监控和事件关联。有人知道如何实现这一点吗?

答案1

编辑:11/17/14

这个答案可能仍然有效,但在 2014 年,使用 Audisp 插件是更好的答案。


如果你正在运行 ksyslogd 系统日志服务器,我不知道该怎么做。但是在他们的网站上有使用 rsyslog 执行此操作的很好的说明维基百科。 (http://wiki.rsyslog.com/index.php/Centralizing_the_audit_log

我总结一下:

  • 在发送客户端(rsyslog.conf):

    #auditd 审计日志  
    $输入文件名 /var/log/audit/audit.log  
    $输入文件标签标签_审计日志:  
    $输入文件状态文件审计日志  
    $InputFileSeverity 信息  
    $输入文件设施 local6  
    $输入运行文件监控器
    

    请注意,imfile模块需要事先在 rsyslog 配置中加载。以下是负责该操作的行:

    $ModLoad 图像文件

    因此请检查它是否在您的rsyslog.conf文件中。如果不存在,请将其添加到### MODULES ###启用此模块的部分下;否则,上述 auditd 日志配置将不起作用。

  • 在接收服务器上 ( rsyslog.conf):

    $模板 HostAudit,“/var/log/rsyslog/%HOSTNAME%/audit_log”  
    本地6.*
    

service rsyslog restart在两台主机上重新启动服务( ),然后您就应该开始接收auditd消息。

答案2

最安全和正确的方法是使用 audispd系统日志插件和/或audisp-远程

快速使其工作您可以编辑 /etc/audisp/plugins.d/syslog.conf。RHEL 默认包含此功能,尽管它被禁用。您只需更改一行即可启用它,活动 = 是

active = yes
direction = out
path = builtin_syslog
type = builtin
args = LOG_INFO
format = string

但这在默认情况下并不是很安全;syslog 本质上是一种不安全的协议,未加密、未认证,并且在其原始 UDP 规范中完全不可靠。它还将大量信息存储在不安全的文件中。Linux 审计系统处理的敏感信息比通常发送到 syslog 的信息要多,因此它是分离的。audisp-remote 还提供 Kerberos 身份验证和加密,因此它可以很好地用作安全传输。使用 audisp-remote,您可以使用 audispd 将审计消息发送到在中央 syslog 服务器上运行的 audisp-remote 服务器。然后 audisp-remote 将使用 audispd syslog 插件将它们输入到 syslog 守护程序中。

但还有其他方法!rsyslog 非常强大!rsyslog 还提供 Kerberos 加密和 TLS。只需确保其配置安全即可。

答案3

您可以使用 audisp 直接记录到 syslog,它是 Audit 包的一部分。在 Debian 中(我还没有在其他发行版中尝试过)编辑:

/etc/audisp/plugins.d/syslog.conf

并设置active=yes

相关内容