使用 Winlogbeat 模块

编辑

使用 Winlogbeat 模块

编辑

Winlogbeat 打包了预构建的 模块,其中包含收集、解析、丰富和可视化来自各种 Windows 日志提供程序的数据所需的配置。每个 Winlogbeat 模块由一个或多个文件集组成,这些文件集包含摄取节点管道、Elasticsearch 模板、Winlogbeat 输入配置和 Kibana 仪表板。

您可以将 Winlogbeat 模块与 Logstash 一起使用,但您需要进行一些额外的设置。最简单的方法是设置和使用 Winlogbeat 提供的摄取管道

使用摄取管道进行解析

编辑

当您将 Winlogbeat 模块与 Logstash 一起使用时,可以使用 Winlogbeat 提供的摄取管道来解析数据。您需要将管道加载到 Elasticsearch 中,并配置 Logstash 以使用它们。

加载摄取管道

在安装 Winlogbeat 的系统上,运行 setup 命令,并指定 --pipelines 选项,以加载特定模块的摄取管道。例如,以下命令加载 security 和 sysmon 模块的摄取管道。

winlogbeat setup --pipelines --modules security,sysmon

此设置步骤需要连接到 Elasticsearch,因为 Winlogbeat 需要将摄取管道加载到 Elasticsearch 中。如有必要,您可以在运行命令之前临时禁用已配置的输出并启用 Elasticsearch 输出。

配置 Logstash 以使用管道

在安装 Logstash 的系统上,创建一个 Logstash 管道配置,该配置从 Logstash 输入(例如 Beats 或 Kafka)读取数据,并将事件发送到 Elasticsearch 输出。在 Elasticsearch 输出中将 pipeline 选项设置为 %{[@metadata][pipeline]},以使用您之前加载的摄取管道。

这是一个示例配置,它从 Beats 输入读取数据,并使用 Winlogbeat 摄取管道来解析模块收集的数据

input {
  beats {
    port => 5044
  }
}

output {
  if [@metadata][pipeline] {
    elasticsearch {
      hosts => "https://061ab24010a2482e9d64729fdb0fd93a.us-east-1.aws.found.io:9243"
      manage_template => false
      index => "%{[@metadata][beat]}-%{[@metadata][version]}" 
      action => "create" 
      pipeline => "%{[@metadata][pipeline]}" 
      user => "elastic"
      password => "secret"
    }
  } else {
    elasticsearch {
      hosts => "https://061ab24010a2482e9d64729fdb0fd93a.us-east-1.aws.found.io:9243"
      manage_template => false
      index => "%{[@metadata][beat]}-%{[@metadata][version]}" 
      action => "create"
      user => "elastic"
      password => "secret"
    }
  }
}

如果您的配置中禁用了数据流,请将 index 选项设置为 %{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}。默认情况下,数据流处于启用状态。

如果您在配置中禁用数据流的使用,则可以删除此设置,或将其设置为适当的不同值。

配置 Logstash 以基于事件中传递的元数据选择正确的摄取管道。

有关设置和运行模块的更多信息,请参阅 Winlogbeat 模块文档。