本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 AWS Firewall Manager 和 Amazon Data Firehose 将 AWS WAF 日志发送到 Splunk
由迈克尔·弗里登塔尔 (AWS)、Aman Kaur Gandhi () 和 JJ Johnson (AWS) 创作 AWS
摘要
一直以来,有两种方法可将数据移入 Splunk:推送架构或提取架构。提取架构通过重试为交付数据提供保障,但它需要 Splunk 中的专用资源来轮询数据。因轮询之故,提取架构通常不是实时的。推送架构通常具有更低的延迟性、更高的可扩展性,并且可以降低操作复杂性和成本。但是,其无法保证交付,通常需要代理。
Splunk 与 Amazon Data Firehose 集成,通过HTTP事件收集器 () 向 Splunk 提供实时流式传输数据。HEC此集成带来了推送架构和提取架构的优势,确保通过重试进行数据传输,近实时,延迟低、复杂性低。通过HTTP或HTTPS直接将数据HEC快速高效地发送到 Splunk。 HECs是基于令牌的,因此无需在应用程序或支持文件中对凭据进行硬编码。
在 AWS Firewall Manager 策略中,您可以为所有账户中的所有 AWS WAF 网络ACL流量配置日志记录,然后可以使用 Firehose 传输流将该日志数据发送到 Splunk 进行监控、可视化和分析。此解决方案具有以下优势:
集中管理和记录所有账户中的 AWS WAF 网络ACL流量
Splunk 与单一集成 AWS 账户
可扩展性
日志数据的近实时传送
成本已经无服务器解决方案优化,因此您无需为未使用的资源付费。
先决条件和限制
先决条件
属于组织 AWS 账户 成员的活跃分子 AWS Organizations。
要使用 Firehose 启用日志功能,您必须具有以下权限:
iam:CreateServiceLinkedRole
firehose:ListDeliveryStreams
wafv2:PutLoggingConfiguration
AWS WAF 并且ACLs必须对其网络进行配置。有关说明,请参阅入门 AWS WAF。
AWS Firewall Manager 必须进行设置。有关说明,请参阅AWS Firewall Manager 先决条件。
AWS WAF 必须配置的 Firewall Manager 安全策略。有关说明,请参阅AWS Firewall ManagerAWS WAF 策略入门。
Splunk 必须使用可通过 Firehose 访问的公共HTTP端点进行设置。
限制
AWS 账户 必须在中的单个组织中进行管理 AWS Organizations。
网络ACL必须与传送流位于同一区域。如果您要为亚马逊捕获日志 CloudFront,请在美国东部(弗吉尼亚北部)地区创建 Firehose 传送流。
us-east-1
适用于 Firehose 的 Splunk 插件可用于付费 Splunk 云部署、分布式 Splunk Enterprise 部署和单实例 Splunk Enterprise 部署。该附加组件不支持免费试用 Splunk Cloud 部署。
架构
目标技术堆栈
Firewall Manager
Firehose
Amazon Simple Storage Service(Amazon S3)
AWS WAF
Splunk
目标架构
下图显示了如何使用防火墙管理器集中记录所有 AWS WAF 数据并通过 Firehose 将其发送到 Splunk。

AWS WAF 网络ACLs向 Firewall Manager 发送防火墙日志数据。
Firewall Manager 将日志数据发送到 Firehose。
Firehose 传输流将日志数据转发到 Splunk 和 S3 存储桶。当 Firehose 传输流出现错误时,S3 存储桶可充当备份。
自动化和扩缩
该解决方案旨在扩展和适应组织ALCs内的所有 AWS WAF Web。您可以将所有网络配置ACLs为使用相同的 Firehose 实例。但是,如果您想设置和使用多个 Firehose 实例,则可以。
工具
AWS 服务
AWS Firewall Manager是一项安全管理服务,可帮助您在中的账户和应用程序中集中配置和管理防火墙规则 AWS Organizations。
Amazon Data Firehose 可帮助您将实时流数据传输
到其他 AWS 服务自定义HTTP终端节点以及受支持的第三方服务提供商(例如 Splunk)拥有的HTTP终端节点。 Amazon Simple Storage Service (Amazon S3) 是一项基于云的对象存储服务,可帮助您存储、保护和检索任意数量的数据。
AWS WAF是一种 Web 应用程序防火墙,可帮助您监控HTTPS请求HTTP并将其转发到受保护的 Web 应用程序资源。
其他工具
Splunk
可帮助您监控、可视化并分析日志数据。
操作说明
任务 | 描述 | 所需技能 |
---|---|---|
安装适用于 Splunk 的应用程序。 AWS |
| 安全管理员、Splunk 管理员 |
安装的附加组件 AWS WAF。 | 重复前面的说明安装适用于 Splunk AWS 的 Web 应用程序防火墙插件。 | 安全管理员、Splunk 管理员 |
安装并配置 Firehose 的 Splunk 插件。 |
| 安全管理员、Splunk 管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
授予 Firehose 访问 Splunk 目的地的权限。 | 配置访问策略,允许 Firehose 访问 Splunk 目标并将日志数据备份到 S3 存储桶。有关更多信息,请参阅授予 Firehose 访问 Splunk 目标的权限。 | 安全管理员 |
创建 Firehose 传送流。 | 在您管理网页ACLs的同一个账户中 AWS WAF,在 Firehose 中创建传送流。要创建传输流,您需要具有一个 IAM 角色。Firehose 担任该IAM角色并获得对指定 S3 存储桶的访问权限。有关说明,请参阅创建传输流。请注意以下几点:
对您在HTTP事件收集器中配置的每个令牌重复此过程。 | 安全管理员 |
测试传输流。 | 测试传输流以验证配置是否正确。有关说明,请参阅 Firehose 文档中的使用 Splunk 作为目标进行测试。 | 安全管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
配置 Firewall Manager 策略。 | 必须将 Firewall Manager 策略配置为启用日志记录并将日志转发到正确的 Firehose 传输流。有关更多信息和说明,请参阅为 AWS WAF 策略配置日志记录。 | 安全管理员 |
相关资源
AWS resources
记录网络ACL流量(AWS WAF 文档)
为 AWS WAF 策略配置日志记录(AWS WAF 文档)
如何使用 Amazon Data Firehose 将VPC流日志推送到 Splunk?
(AWS 知识中心)
Splunk 文档