我有一个简单的 Splunk 设置。大约 120 台左右安装了通用转发器的 Linux 服务器(基本上都是设备),以及一台运行 Splunk Enterprise 的 Linux 服务器,充当索引器、搜索头等。
我遇到的问题是转发器必须将服务器的审核日志提供给 Splunk。该提要实际上工作正常,但它淹没了服务器,导致我超出了许可证限制。
具体来说,设备应用程序在 cron 中有一个经常运行的事件,并且它会用文件访问、文件修改等事件淹没审核日志,这使得我发送到 Splunk Enterprise 的数据量激增。根本不需要数据。
我想要做的是过滤掉这些特定事件,但仅限于该特定用户。我相信这可以在索引器上使用 Transforms.conf 和 props.conf 来完成,但我在获取正确的语法和字段时遇到了困难。
有人可以帮忙吗?
这是我需要删除的数据... sourcetype=auditd acct=appuser exe=/usr/sbin/crond exe=/usr/bin/crontab
因此,基本上,用户“appuser”的审核日志中引用“/usr/bin/crontab”或“usr/bin/crontab”的任何事件都需要删除。
这是我要删除的事件的示例。
类型=USER_END msg=审核(03/04/2024 15:58:02.701:5726) : pid=26919 uid=root auid=appuser ses=184 msg='op=PAM:session_close grantors=pam_loginuid,pam_keyinit,pam_limits,pam_systemd acct=appuser exe=/usr/sbin/crond 主机名=? 地址=?终端=cron res=成功'
类型=USER_ACCT msg=audit(03/04/2024 15:58:02.488:5723) : pid=26947 uid=appuser auid=appuser ses=184 msg='op=PAM:会计授予者=pam_access,pam_unix,pam_localuser acct= appuser exe=/usr/bin/crontab 主机名=? 地址=?终端=cron res=成功'
这可以做到吗?
了解到目前为止您已经尝试过什么以及这些努力如何让您失败将会有所帮助。你想做的事情是可能的。对每条消息进行单独的转换可以更轻松地防止正则表达式变得太混乱。
道具.conf:
转换.conf:
也可以使用摄取操作来完成。转至“设置”->“摄取操作”打开向导。
我最终将 RichG 的回应与另一个论坛的一些建议结合起来,得出了我的答案。
这里是
道具配置文件
转换.conf