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 的示例仪表板
字段
编辑有关模块中每个字段的描述,请参阅导出的字段部分。