配置 Linux 文件系统监控

编辑

默认情况下,Elastic Defend 会监控 Elastic 已测试过兼容性的特定 Linux 文件系统类型。如果您的网络包含非标准、专有或其他无法识别的 Linux 文件系统,您可以配置集成策略以将监控和保护扩展到这些附加的文件系统。您还可以让 Elastic Defend 忽略无法识别的文件系统类型,前提是它们不需要监控或不会导致意外问题。

忽略文件系统可能会导致安全覆盖范围出现漏洞。对于 Elastic Defend 忽略的任何文件系统,请使用其他安全层。

要监控或忽略其他文件系统,请配置与fanotify相关的以下高级设置,fanotify 是一个监控文件系统事件的 Linux 功能。在导航菜单中找到策略或使用全局搜索字段,点击策略名称,然后向下滚动并选择显示高级设置

即使配置为监控所有文件系统(ignore_unknown_filesystemsfalse),Elastic Defend 仍将忽略 Elastic 内部识别为不兼容的特定文件系统。以下设置适用于任何其他文件系统。

linux.advanced.fanotify.ignore_unknown_filesystems

确定是否忽略无法识别的文件系统。输入以下内容之一

  • true:(默认)仅监控 Elastic 测试过的文件系统,并忽略所有其他文件系统。您仍然可以使用 monitored_filesystemsignored_filesystems 分别监控或忽略特定文件系统。
  • false:监控所有文件系统。您仍然可以使用 ignored_filesystems 忽略特定文件系统。

如果您从 8.3 或更早版本升级,则此值为 false,以确保向后兼容性。如果您不需要监控其他文件系统,建议在升级后将 ignore_unknown_filesystems 更改为 true

linux.advanced.fanotify.monitored_filesystems

指定要监控的其他文件系统。输入 文件系统名称 的逗号分隔列表,这些名称在 /proc/filesystems 中显示(例如:jfs,ufs,ramfs)。

建议避免监控网络支持的文件系统。

如果 ignore_unknown_filesystemsfalse,则不会识别此设置,因为这意味着您已经监控了所有文件系统。

此设置中的条目会被 ignored_filesystems 中的条目覆盖。

linux.advanced.fanotify.ignored_filesystems

指定要忽略的其他文件系统。输入 文件系统名称 的逗号分隔列表,这些名称在 /proc/filesystems 中显示(例如:ext4,tmpfs)。

此设置中的条目会覆盖 monitored_filesystems 中的条目。

查找文件系统名称

编辑

本节提供了一些方法来确定 linux.advanced.fanotify.monitored_filesystemslinux.advanced.fanotify.ignored_filesystems 所需的文件系统名称。

在典型的设置中,当您安装 Elastic Agent 时,Filebeat 会与 Elastic Endpoint 一起安装,并会自动将 Elastic Endpoint 日志发送到 Elasticsearch。当事件发生时,Elastic Endpoint 会生成一条关于已扫描文件的日志消息。

要查找系统文件名

  1. 在导航菜单中找到主机,或使用全局搜索字段搜索Security/Explore/Hosts
  2. 在“主机”页面中,搜索message: "Current sync path" 以显示文件路径。
  3. 如果您有权访问端点,请运行findmnt -o FSTYPE -T <file path> 以返回文件系统。例如

    > findmnt -o FSTYPE -T /etc/passwd
    FSTYPE
    ext4

    这将返回文件系统名称为 ext4

或者,您还可以通过关联来自其他两条日志消息的数据来查找文件系统名称

  1. 搜索日志以查找message: "Current fdinfo" 以显示文件路径的mnt_id值。在此示例中,mnt_id值为29

    pos:	12288
    flags:	02500002
    mnt_id:	29
    ino:	2367737
  2. 搜索日志以查找message: "Current mountinfo" 以显示与您在上一步中找到的mnt_id值对应的文件系统

    <snip>
    29 1 8:2 / / rw,relatime shared:1 - ext4 /dev/sda2 rw,errors=remount-ro
    <snip>

    第一个数字29mnt_id,连字符(-)之后的第一个字段是文件系统名称ext4