思科模块编辑

这是一个用于思科网络设备日志和 Cisco Umbrella 的模块。它包括以下文件集,用于通过 syslog 接收日志或从文件读取日志

  • asa 文件集:支持 Cisco ASA 防火墙日志。
  • amp 文件集:支持 Cisco AMP API 日志。
  • ftd 文件集:支持 Cisco Firepower 威胁防御日志。
  • ios 文件集:支持 Cisco IOS 路由器和交换机日志。
  • umbrella 文件集:支持 Cisco Umbrella 日志。

Cisco ASA 设备还支持使用 NetFlow 导出流记录,Filebeat 中的netflow 模块支持 NetFlow。

当您运行该模块时,它会在后台执行一些任务

  • 设置日志文件的默认路径(但别担心,您可以覆盖默认值)
  • 确保每个多行日志事件都作为单个事件发送
  • 使用 Elasticsearch 提取管道来解析和处理日志行,将数据 shaping 成适合在 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 通用模式 (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/<年>-<月>-<日>/<年>-<月>-<日>-<小时>-<分钟>.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_idapi_key。有关如何检索这些凭据的更多信息,请参阅 Cisco AMP API 文档

为 API 配置的 URL 取决于您的 AMP 所在的区域,当前有三个选择:- api.amp.cisco.com - api.apjc.amp.cisco.com - api.eu.amp.cisco.com

如果 Cisco 将来添加了新的端点,请参阅位于 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 检查 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 模块首次启动时从多长时间之前开始收集事件。支持以小时(例如:24h)、分钟(例如:10m)和秒(例如:50s)为单位的数量。
var.limit
此值控制 Cisco AMP API 每页返回多少个事件。

示例仪表板编辑

此模块附带 ASA 的示例仪表板

kibana cisco asa

字段编辑

有关模块中每个字段的说明,请参阅 导出字段 部分。