- Filebeat 参考其他版本
- Filebeat 概述
- 快速入门:安装和配置
- 设置和运行
- 升级
- Filebeat 的工作原理
- 配置
- 输入
- 模块
- 通用设置
- 项目路径
- 配置文件加载
- 输出
- Kerberos
- SSL
- 索引生命周期管理 (ILM)
- Elasticsearch 索引模板
- Kibana 端点
- Kibana 仪表板
- 处理器
- 定义处理器
- add_cloud_metadata
- add_cloudfoundry_metadata
- add_docker_metadata
- add_fields
- add_host_metadata
- add_id
- add_kubernetes_metadata
- add_labels
- add_locale
- add_network_direction
- add_nomad_metadata
- add_observer_metadata
- add_process_metadata
- add_tags
- append
- cache
- community_id
- convert
- copy_fields
- decode_base64_field
- decode_cef
- decode_csv_fields
- decode_duration
- decode_json_fields
- decode_xml
- decode_xml_wineventlog
- decompress_gzip_field
- detect_mime_type
- dissect
- dns
- drop_event
- drop_fields
- extract_array
- fingerprint
- include_fields
- move_fields
- parse_aws_vpc_flow_log
- rate_limit
- registered_domain
- rename
- replace
- script
- syslog
- timestamp
- translate_ldap_attribute
- translate_sid
- truncate_fields
- urldecode
- 自动发现
- 内部队列
- 日志记录
- HTTP 端点
- 正则表达式支持
- 检测
- 功能标志
- filebeat.reference.yml
- 操作指南
- 模块
- 模块概述
- ActiveMQ 模块
- Apache 模块
- Auditd 模块
- AWS 模块
- AWS Fargate 模块
- Azure 模块
- CEF 模块
- Check Point 模块
- Cisco 模块
- CoreDNS 模块
- CrowdStrike 模块
- Cyberark PAS 模块
- Elasticsearch 模块
- Envoyproxy 模块
- Fortinet 模块
- Google Cloud 模块
- Google Workspace 模块
- HAproxy 模块
- IBM MQ 模块
- Icinga 模块
- IIS 模块
- Iptables 模块
- Juniper 模块
- Kafka 模块
- Kibana 模块
- Logstash 模块
- Microsoft 模块
- MISP 模块
- MongoDB 模块
- MSSQL 模块
- MySQL 模块
- MySQL Enterprise 模块
- NATS 模块
- NetFlow 模块
- Nginx 模块
- Office 365 模块
- Okta 模块
- Oracle 模块
- Osquery 模块
- Palo Alto Networks 模块
- pensando 模块
- PostgreSQL 模块
- RabbitMQ 模块
- Redis 模块
- Salesforce 模块
- Santa 模块
- Snyk 模块
- Sophos 模块
- Suricata 模块
- System 模块
- Threat Intel 模块
- Traefik 模块
- Zeek (Bro) 模块
- ZooKeeper 模块
- Zoom 模块
- 导出的字段
- ActiveMQ 字段
- Apache 字段
- Auditd 字段
- AWS 字段
- AWS CloudWatch 字段
- AWS Fargate 字段
- Azure 字段
- Beat 字段
- 解码 CEF 处理器字段
- CEF 字段
- Checkpoint 字段
- Cisco 字段
- 云提供商元数据字段
- Coredns 字段
- Crowdstrike 字段
- CyberArk PAS 字段
- Docker 字段
- ECS 字段
- Elasticsearch 字段
- Envoyproxy 字段
- Fortinet 字段
- Google Cloud Platform (GCP) 字段
- google_workspace 字段
- HAProxy 字段
- 主机字段
- ibmmq 字段
- Icinga 字段
- IIS 字段
- iptables 字段
- Jolokia Discovery 自动发现提供程序字段
- Juniper JUNOS 字段
- Kafka 字段
- kibana 字段
- Kubernetes 字段
- 日志文件内容字段
- logstash 字段
- Lumberjack 字段
- Microsoft 字段
- MISP 字段
- mongodb 字段
- mssql 字段
- MySQL 字段
- MySQL Enterprise 字段
- NATS 字段
- NetFlow 字段
- Nginx 字段
- Office 365 字段
- Okta 字段
- Oracle 字段
- Osquery 字段
- panw 字段
- Pensando 字段
- PostgreSQL 字段
- 进程字段
- RabbitMQ 字段
- Redis 字段
- s3 字段
- Salesforce 字段
- Google Santa 字段
- Snyk 字段
- sophos 字段
- Suricata 字段
- System 字段
- threatintel 字段
- Traefik 字段
- Windows ETW 字段
- Zeek 字段
- ZooKeeper 字段
- Zoom 字段
- 监控
- 安全
- 故障排除
- 获取帮助
- 调试
- 了解记录的指标
- 常见问题
- 在使用 Kubernetes 元数据时提取容器 ID 时出错
- 无法从网络卷读取日志文件
- Filebeat 未从文件中收集行
- 打开的文件句柄过多
- 注册表文件太大
- Inode 重用导致 Filebeat 跳过行
- 日志轮换导致事件丢失或重复
- 打开的文件句柄导致 Windows 文件轮换出现问题
- Filebeat 占用过多 CPU
- Kibana 中的仪表板错误地分解数据字段
- 字段未在 Kibana 可视化中编制索引或可用
- Filebeat 未传输文件的最后一行
- Filebeat 长时间保持已删除文件的打开文件句柄
- Filebeat 使用过多带宽
- 加载配置文件时出错
- 发现意外或未知字符
- Logstash 连接不起作用
- 发布到 Logstash 失败,并显示“connection reset by peer”消息
- @metadata 在 Logstash 中丢失
- 不确定是使用 Logstash 还是 Beats
- SSL 客户端无法连接到 Logstash
- 监控 UI 显示的 Beats 比预期的少
- 仪表板无法定位索引模式
- 由于 MADV 设置导致高 RSS 内存使用率
- 为 Beats 做贡献
Cisco 模块
编辑Cisco 模块
编辑这是用于 Cisco 网络设备的日志和 Cisco Umbrella 的模块。它包括以下文件集,用于通过 syslog 接收日志或从文件读取日志
-
asa
文件集:支持 Cisco ASA 防火墙日志。 -
amp
文件集:支持 Cisco AMP API 日志。 -
ftd
文件集:支持 Cisco Firepower Threat Defense 日志。 -
ios
文件集:支持 Cisco IOS 路由器和交换机日志。 -
umbrella
文件集:支持 Cisco Umbrella 日志。
Cisco ASA 设备还支持使用 NetFlow 导出流记录,Filebeat 中的 netflow 模块支持该功能。
当您运行该模块时,它会在后台执行以下几项任务
- 设置日志文件的默认路径(但不用担心,您可以覆盖默认值)
- 确保每个多行日志事件都作为单个事件发送
- 使用 Elasticsearch 摄取管道来解析和处理日志行,将数据转换为适合在 Kibana 中可视化的结构
- 部署用于可视化日志数据的仪表板
阅读快速入门,了解如何配置和运行模块。
配置模块
编辑您可以通过在 modules.d/cisco.yml
文件中指定 变量设置,或者在命令行中覆盖设置,来进一步优化 cisco
模块的行为。
您必须在该模块中至少启用一个文件集。文件集默认情况下处于禁用状态。
该模块默认配置为通过 syslog 在 9001 端口(ASA)和 9002 端口(IOS)上运行。但是,也可以将其配置为从文件路径读取。请参见以下示例。
Cisco Umbrella 以压缩的 CSV 格式将其日志发布到 S3 存储桶。
- module: cisco asa: enabled: true var.paths: ["/var/log/cisco-asa.log"] var.input: "file"
变量设置
编辑每个文件集都有单独的变量设置,用于配置模块的行为。如果您不指定变量设置,则 cisco
模块将使用默认值。
对于高级用例,您还可以覆盖输入设置。请参阅 覆盖输入设置。
当您在命令行中指定设置时,请记住在设置前加上模块名称,例如,cisco.asa.var.paths
而不是 asa.var.paths
。
asa
文件集设置
编辑配置示例
- module: cisco asa: var.syslog_host: 0.0.0.0 var.syslog_port: 9001 var.log_level: 5
-
var.paths
- 指定日志文件查找位置的基于 glob 的路径数组。此处还支持 Go Glob 支持的所有模式。例如,您可以使用通配符从预定义级别的子目录中获取所有文件:
/path/to/log/*/*.log
。这会从/path/to/log
的子文件夹中获取所有.log
文件。它不会从/path/to/log
文件夹本身获取日志文件。如果将此设置留空,则 Filebeat 将根据您的操作系统选择日志路径。 -
var.log_level
- 一个介于 1 和 7 之间的整数,允许根据严重性级别过滤消息。Cisco ASA 支持的不同严重性级别如下
log_level | 严重性 |
---|---|
1 |
警报 |
2 |
严重 |
3 |
错误 |
4 |
警告 |
5 |
通知 |
6 |
信息 |
7 |
调试 |
值为 7(默认值)将不筛选任何消息。较低的值将删除严重性级别高于指定值的任何消息。例如,var.log_level: 3
将允许级别为 1(警报)、2(严重)和 3(错误)的消息。所有其他消息将被删除。
筛选是在摄取管道中完成的,如果更改此设置,则需要手动重新加载摄取管道。要重新加载摄取管道,请设置 filebeat.overwrite_pipelines: true
并手动加载摄取管道。
-
var.syslog_host
- 用于侦听基于 UDP 的 syslog 流量的接口。默认为 localhost。设置为 0.0.0.0 以绑定到所有可用接口。
-
var.syslog_port
- 用于侦听 syslog 流量的 UDP 端口。默认为 9001。
-
var.timezone_offset
- 用于解释没有时区的 syslog 时间戳的 IANA 时区或时间偏移量(例如,
+0200
)。默认为 UTC。 -
var.tags
- 要包含在事件中的标签列表。包含
forwarded
表示事件不是在此主机上产生的,并导致host.name
不添加到事件中。默认为[cisco-asa, forwarded]
。
ftd
文件集设置
编辑Cisco FTD 文件集主要支持解析类似于 ASA 设备的 IPv4 和 IPv6 访问列表日志消息,以及入侵、连接、文件和恶意软件事件的安全事件 syslog 消息。
字段映射
ftd
文件集将安全事件 Syslog 消息映射到 Elastic Common Schema (ECS) 格式。下表说明了从安全事件字段到 ECS 的映射。当没有相应的 ECS 字段可用时,将使用 cisco.ftd
前缀。
入侵事件字段的映射
FTD 字段 | 映射字段 |
---|---|
ApplicationProtocol |
network.protocol |
DstIP |
destination.address |
DstPort |
destination.port |
EgressInterface |
cisco.ftd.destination_interface |
GID |
service.id |
HTTPResponse |
http.response.status_code |
IngressInterface |
cisco.ftd.source_interface |
InlineResult |
event.outcome |
IntrusionPolicy |
cisco.ftd.rule_name |
Message |
message |
Protocol |
network.transport |
SrcIP |
source.address |
SrcPort |
source.port |
User |
user.id, user.name |
WebApplication |
network.application |
连接和安全情报事件字段的映射
FTD 字段 | 映射字段 |
---|---|
ACPolicy |
cisco.ftd.rule_name |
AccessControlRuleAction |
event.outcome |
AccessControlRuleName |
cisco.ftd.rule_name |
ApplicationProtocol |
network.protocol |
ConnectionDuration |
event.duration |
DNSQuery |
dns.question.name |
DNSRecordType |
dns.question.type |
DNSResponseType |
dns.response_code |
DstIP |
destination.address |
DstPort |
destination.port |
EgressInterface |
cisco.ftd.destination_interface |
HTTPReferer |
http.request.referrer |
HTTPResponse |
http.response.status_code |
IngressInterface |
cisco.ftd.source_interface |
InitiatorBytes |
source.bytes |
InitiatorPackets |
source.packets |
NetBIOSDomain |
host.hostname |
Protocol |
network.transport |
ReferencedHost |
url.domain |
ResponderBytes |
destination.bytes |
ResponderPackets |
destination.packets |
SSLActualAction |
event.outcome |
SSLServerName |
server.domain |
SrcIP |
source.address |
SrcPort |
source.port |
URL |
url.original |
User |
user.name |
UserAgent |
user_agent.original |
WebApplication |
network.application |
originalClientSrcIP |
client.address |
文件和恶意软件事件字段的映射
FTD 字段 | 映射字段 |
---|---|
ApplicationProtocol |
network.protocol |
ArchiveFileName |
file.name |
ArchiveSHA256 |
file.hash.sha256 |
Client |
network.application |
DstIP |
destination.address |
DstPort |
destination.port |
FileName |
file.name |
FilePolicy |
cisco.ftd.rule_name |
FileSHA256 |
file.hash.sha256 |
FileSize |
file.size |
FirstPacketSecond |
event.start |
Protocol |
network.transport |
SrcIP |
source.address |
SrcPort |
source.port |
URI |
url.original |
User |
user.name |
WebApplication |
network.application |
配置示例
- module: cisco ftd: var.syslog_host: 0.0.0.0 var.syslog_port: 9003 var.log_level: 5
-
var.paths
- 指定日志文件查找位置的基于 glob 的路径数组。此处还支持 Go Glob 支持的所有模式。例如,您可以使用通配符从预定义级别的子目录中获取所有文件:
/path/to/log/*/*.log
。这会从/path/to/log
的子文件夹中获取所有.log
文件。它不会从/path/to/log
文件夹本身获取日志文件。如果将此设置留空,则 Filebeat 将根据您的操作系统选择日志路径。 -
var.log_level
- 一个介于 1 和 7 之间的整数,允许根据严重性级别过滤消息。Cisco ASA 支持的不同严重性级别如下
log_level | 严重性 |
---|---|
1 |
警报 |
2 |
严重 |
3 |
错误 |
4 |
警告 |
5 |
通知 |
6 |
信息 |
7 |
调试 |
值为 7(默认值)将不筛选任何消息。较低的值将删除严重性级别高于指定值的任何消息。例如,var.log_level: 3
将允许级别为 1(警报)、2(严重)和 3(错误)的消息。所有其他消息将被删除。
筛选是在摄取管道中完成的,如果更改此设置,则需要手动重新加载摄取管道。要重新加载摄取管道,请设置 filebeat.overwrite_pipelines: true
并手动加载摄取管道。
-
var.syslog_host
- 用于侦听基于 UDP 的 syslog 流量的接口。默认为 localhost。设置为 0.0.0.0 以绑定到所有可用接口。
-
var.syslog_port
- 用于侦听 syslog 流量的 UDP 端口。默认为 9003。
-
var.timezone_offset
- 用于解释没有时区的 syslog 时间戳的 IANA 时区或时间偏移量(例如,
+0200
)。默认为 UTC。 -
var.tags
- 要包含在事件中的标签列表。包含
forwarded
表示事件不是在此主机上产生的,并导致host.name
不添加到事件中。默认为[cisco-ftd, forwarded]
。
ios
文件集设置
编辑Cisco IOS 文件集主要支持解析 IPv4 和 IPv6 访问列表日志消息。
配置示例
- module: cisco ios: var.syslog_host: 0.0.0.0 var.syslog_port: 9002
-
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 端口。默认为 9002。
-
var.tags
- 要包含在事件中的标签列表。包含
forwarded
表示事件不是在此主机上产生的,并导致host.name
不添加到事件中。默认为[cisco-ios, forwarded]
。
时区支持
编辑此模块解析不包含时区信息的日志。对于这些日志,Filebeat 读取本地时区,并在解析时使用它来将时间戳转换为 UTC。用于解析的时区包含在事件的 event.timezone
字段中。
要禁用此转换,可以使用 drop_fields
处理器删除 event.timezone
字段。
如果日志源自时区与本地时区不同的系统或应用程序,则可以使用 add_fields
处理器覆盖 event.timezone
字段,并使用原始时区。
有关在配置中指定处理器的信息,请参阅处理器。
umbrella
文件集设置
编辑Cisco Umbrella 文件集主要侧重于使用 filebeat S3 输入从 S3 存储桶读取 CSV 文件。
要配置 Cisco Umbrella 以记录到自我管理的 S3 存储桶,请遵循Cisco Umbrella 用户指南,以及AWS S3 输入文档,以设置必要的 Amazon SQS 队列。目前不支持从 Cisco 管理的 S3 存储桶检索日志。
此文件集支持所有 4 种日志类型:- 代理 - 云防火墙 - IP 日志 - DNS 日志
Cisco Umbrella 文件集依赖于遵循原始文件路径结构。此结构在Umbrella 日志格式和版本控制中记录
<子文件夹>/<YYYY>-<MM>-<DD>/<YYYY>-<MM>-<DD>-<hh>-<mm>-<xxxx>.csv.gz dnslogs/<year>-<month>-<day>/<year>-<month>-<day>-<hour>-<minute>.csv.gz
配置示例
- module: cisco umbrella: enabled: true var.input: aws-s3 var.queue_url: https://sqs.us-east-1.amazonaws.com/ID/CiscoQueue var.access_key_id: 123456 var.secret_access_key: PASSWORD
-
var.input
- 读取消息的输入。可以是 S3 或文件。
-
var.queue_url
- 如果输入类型为 S3,则为 SQS 队列的 URL。
-
var.access_key_id
- 用于从 SQS 队列读取的访问密钥的 ID。
-
var.secret_access_key
- 用于向 SQS 队列进行身份验证的密钥。
-
var.visibility_timeout
- 接收到的消息从 ReceiveMessage 请求中隐藏的持续时间。默认为 300 秒。
-
var.api_timeout
- AWS API 请求被中断之前的最大持续时间。默认为 120 秒。
amp
文件集设置
编辑Cisco AMP 文件集专注于从您的 Cisco AMP/Cisco Secure Endpoint API 收集事件。
要配置 Cisco AMP 文件集,您需要从 AMP 仪表板检索您的 client_id
和 api_key
。 有关如何检索这些凭据的更多信息,请参考 Cisco AMP API 文档。
为 API 配置的 URL 取决于您的 AMP 所在的区域,目前有三种选择:- api.amp.cisco.com - api.apjc.amp.cisco.com - api.eu.amp.cisco.com
如果思科未来添加了新的端点,请参考位于 Cisco AMP API 文档的 API URL 列表。
配置示例
- module: cisco amp: enabled: true var.input: httpjson var.url: https://api.amp.cisco.com/v1/events var.client_id: 123456 var.api_key: sfda987gdf90s0df0
首次启动 Filebeat 模块时,您可以配置 Filebeat 从多久之前开始收集现有事件。 还可以选择 Filebeat 检查 Cisco AMP API 的频率。 以下是另一个示例,它会回溯 200 小时,并具有自定义超时时间
- module: cisco amp: enabled: true var.input: httpjson var.url: https://api.amp.cisco.com/v1/events var.client_id: 123456 var.api_key: sfda987gdf90s0df0 var.first_interval: 200h var.interval: 60m var.request_timeout: 120s var.limit: 100
-
var.input
- 读取消息的输入。支持 httpjson。
-
var.url
- Cisco AMP API 端点的 URL,此 URL 值取决于您的区域。它将与您的 Cisco AMP 仪表板 URL 位于同一区域。
-
var.client_id
- 用于访问 API 的用户帐户的 ID。
-
var.api_key
- 与相关 client_id 一起使用的 API 密钥。
-
var.request_timeout
- 在处理大量事件涌入时,特别是对于大型企业,API 可能需要更长的时间才能响应。 此值用于为 Filebeat 发送的每个请求设置自定义超时值。
-
var.first_interval
- 您希望在首次启动 Filebeat 模块时从多久之前开始收集事件。支持以小时(例如:24 小时)、分钟(例如:10 分钟)和秒(例如:50 秒)为单位的量。
-
var.limit
- 此值控制 Cisco AMP API 每页返回的事件数量。
示例仪表板
编辑此模块附带一个 ASA 的示例仪表板

字段
编辑有关模块中每个字段的描述,请参阅导出的字段部分。