Iptables 模块
编辑Iptables 模块
编辑这是一个用于 iptables 和 ip6tables 日志的模块。它解析通过 syslog 或从文件通过网络接收的日志。此外,它还理解某些 Ubiquiti 防火墙添加的前缀,其中包括规则集名称、规则编号以及对流量执行的操作(允许/拒绝)。
当您运行该模块时,它会在后台执行以下几个任务
- 将默认输入设置为
syslog
并绑定到localhost
端口9001
(但请放心,您可以覆盖默认设置)。 - 使用 ingest 管道解析和处理日志行,将数据塑造成适合在 Kibana 中可视化的结构。
- 部署用于可视化日志数据的仪表板。
阅读快速入门,了解如何配置和运行模块。
配置模块
编辑您可以通过在 modules.d/iptables.yml
文件中指定变量设置,或在命令行覆盖设置,进一步优化 iptables
模块的行为。
您必须在模块中启用至少一个文件集。文件集默认情况下处于禁用状态。
默认情况下,该模块配置为通过端口 9001 上的 syslog 运行。但是,它也可以配置为从文件路径读取。请参阅以下示例。
- module: iptables log: enabled: true var.paths: ["/var/log/iptables.log"] var.input: "file"
变量设置
编辑每个文件集都有单独的变量设置,用于配置模块的行为。如果您未指定变量设置,则 iptables
模块将使用默认值。
对于高级用例,您还可以覆盖输入设置。请参阅 覆盖输入设置。
在命令行中指定设置时,请记住在设置前加上模块名称,例如,iptables.log.var.paths
而不是 log.var.paths
。
log
日志文件集设置
编辑-
var.paths
- 一个基于 glob 的路径数组,指定在何处查找日志文件。此处也支持 Go Glob 支持的所有模式。例如,您可以使用通配符从预定义级别的子目录中获取所有文件:
/path/to/log/*/*.log
。这将从/path/to/log
的子文件夹中获取所有.log
文件。它不会从/path/to/log
文件夹本身中获取日志文件。如果此设置保留为空,Filebeat 将根据您的操作系统选择日志路径。 -
var.syslog_host
- 用于侦听基于 UDP 的 syslog 流量的接口。默认为
localhost
。设置为0.0.0.0
可绑定到所有可用接口。 -
var.syslog_port
- 用于侦听 syslog 流量的 UDP 端口。默认为
9001
1024 以下的端口需要 Filebeat 以 root 身份运行。
-
var.tags
- 要包含在事件中的标签列表。包含
forwarded
表示事件并非源自此主机,并导致不会将host.name
添加到事件中。默认为[iptables, forwarded]
。
时区支持
编辑此模块解析不包含时区信息的日志。对于这些日志,Filebeat 会读取本地时区,并在解析时使用它将时间戳转换为 UTC。用于解析的时区包含在事件的 event.timezone
字段中。
要禁用此转换,可以使用 drop_fields
处理器删除 event.timezone
字段。
如果日志源自与本地时区不同的系统或应用程序,则可以使用 add_fields
处理器,使用原始时区覆盖 event.timezone
字段。
有关在配置中指定处理器的信息,请参阅 处理器。
示例仪表板
编辑此模块附带示例仪表板,显示使用的地理位置和网络协议。一个用于所有 iptables 日志
以及一个专门用于 Ubiquiti 防火墙日志的
字段
编辑有关模块中每个字段的描述,请参阅导出的字段部分。