选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

使用 AWS Firewall Manager 和 Amazon Data Firehose 将 AWS WAF 日志发送到 Splunk - AWS Prescriptive Guidance

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 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。

架构图显示了通过 Amazon Data Firehose 向 Splunk 发送AWSWAF日志数据
  1. AWS WAF 网络ACLs向 Firewall Manager 发送防火墙日志数据。

  2. Firewall Manager 将日志数据发送到 Firehose。

  3. 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

  1. 登录您的 Splunk heavy 转发服务器。默认 URL 为 http://<IP address>:8000

  2. 在左侧导航栏中应用程序旁,选择齿轮按钮。

  3. 选择浏览更多应用程序

  4. 搜索 AWS

  5. 对于适用于 Splunk 的应用程序 AWS,请选择安装

  6. 输入 Splunk.com 登录凭证,接受条款和条件,然后选择登录并安装

  7. 选择完成

安全管理员、Splunk 管理员

安装的附加组件 AWS WAF。

重复前面的说明安装适用于 Splunk AWS 的 Web 应用程序防火墙插件

安全管理员、Splunk 管理员

安装并配置 Firehose 的 Splunk 插件。

  1. 安装并配置 Firehose 的 Splunk 插件。作为安装和配置的一部分,如果您的 Splunk 平台有必要,您可以设置HTTP事件收集器并准备好将日志数据发送到索引器的基础架构。请参阅与您的 Splunk 部署对应的说明:

    重要

    安装并配置 Splunk 插件后,请停止此过程。请勿继续按照配置 Firehose 以向 Splunk 平台发送数据的说明进行操作。

  2. 记下HTTP事件收集器令牌和HTTP端点。您稍后配置传送流时需要使用该值。

安全管理员、Splunk 管理员

配置 Splunk

任务描述所需技能

安装适用于 Splunk 的应用程序。 AWS

  1. 登录您的 Splunk heavy 转发服务器。默认 URL 为 http://<IP address>:8000

  2. 在左侧导航栏中应用程序旁,选择齿轮按钮。

  3. 选择浏览更多应用程序

  4. 搜索 AWS

  5. 对于适用于 Splunk 的应用程序 AWS,请选择安装

  6. 输入 Splunk.com 登录凭证,接受条款和条件,然后选择登录并安装

  7. 选择完成

安全管理员、Splunk 管理员

安装的附加组件 AWS WAF。

重复前面的说明安装适用于 Splunk AWS 的 Web 应用程序防火墙插件

安全管理员、Splunk 管理员

安装并配置 Firehose 的 Splunk 插件。

  1. 安装并配置 Firehose 的 Splunk 插件。作为安装和配置的一部分,如果您的 Splunk 平台有必要,您可以设置HTTP事件收集器并准备好将日志数据发送到索引器的基础架构。请参阅与您的 Splunk 部署对应的说明:

    重要

    安装并配置 Splunk 插件后,请停止此过程。请勿继续按照配置 Firehose 以向 Splunk 平台发送数据的说明进行操作。

  2. 记下HTTP事件收集器令牌和HTTP端点。您稍后配置传送流时需要使用该值。

安全管理员、Splunk 管理员
任务描述所需技能

授予 Firehose 访问 Splunk 目的地的权限。

配置访问策略,允许 Firehose 访问 Splunk 目标并将日志数据备份到 S3 存储桶。有关更多信息,请参阅授予 Firehose 访问 Splunk 目标的权限。

安全管理员

创建 Firehose 传送流。

在您管理网页ACLs的同一个账户中 AWS WAF,在 Firehose 中创建传送流。要创建传输流,您需要具有一个 IAM 角色。Firehose 担任该IAM角色并获得对指定 S3 存储桶的访问权限。有关说明,请参阅创建传输流。请注意以下几点:

  • 传输流名称必须以 aws-waf-logs- 开头。

  • 对于来源,请选择 “直接” PUT。

  • 对于 S3 备份模式,请选择备份所有事件,然后选择现有存储桶或创建新存储桶。

  • 对于目的地,请按照 Firehose 文档中为目的地选择 Splunk 中的说明进行操作。有关 Splunk 终端节点和终端节点类型的值的信息,请参阅 Splunk 文档中的配置 Amazon Data Firehos e。

对您在HTTP事件收集器中配置的每个令牌重复此过程。

安全管理员

测试传输流。

测试传输流以验证配置是否正确。有关说明,请参阅 Firehose 文档中的使用 Splunk 作为目标进行测试

安全管理员

创建 Firehose 传送流

任务描述所需技能

授予 Firehose 访问 Splunk 目的地的权限。

配置访问策略,允许 Firehose 访问 Splunk 目标并将日志数据备份到 S3 存储桶。有关更多信息,请参阅授予 Firehose 访问 Splunk 目标的权限。

安全管理员

创建 Firehose 传送流。

在您管理网页ACLs的同一个账户中 AWS WAF,在 Firehose 中创建传送流。要创建传输流,您需要具有一个 IAM 角色。Firehose 担任该IAM角色并获得对指定 S3 存储桶的访问权限。有关说明,请参阅创建传输流。请注意以下几点:

  • 传输流名称必须以 aws-waf-logs- 开头。

  • 对于来源,请选择 “直接” PUT。

  • 对于 S3 备份模式,请选择备份所有事件,然后选择现有存储桶或创建新存储桶。

  • 对于目的地,请按照 Firehose 文档中为目的地选择 Splunk 中的说明进行操作。有关 Splunk 终端节点和终端节点类型的值的信息,请参阅 Splunk 文档中的配置 Amazon Data Firehos e。

对您在HTTP事件收集器中配置的每个令牌重复此过程。

安全管理员

测试传输流。

测试传输流以验证配置是否正确。有关说明,请参阅 Firehose 文档中的使用 Splunk 作为目标进行测试

安全管理员
任务描述所需技能

配置 Firewall Manager 策略。

必须将 Firewall Manager 策略配置为启用日志记录并将日志转发到正确的 Firehose 传输流。有关更多信息和说明,请参阅为 AWS WAF 策略配置日志记录

安全管理员

将 Firewall Manager 配置为记录数据

任务描述所需技能

配置 Firewall Manager 策略。

必须将 Firewall Manager 策略配置为启用日志记录并将日志转发到正确的 Firehose 传输流。有关更多信息和说明,请参阅为 AWS WAF 策略配置日志记录

安全管理员

相关资源

AWS resources

Splunk 文档

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。