mcpField
N
networkfirewall

networkfirewall

github.com/aws安全3.3k670 次安装1 天前更新
代码仓库

关于 networkfirewall

networkfirewall 是用于配置和排查 AWS Network Firewall 的任务路由技能。它将操作人员引向有关部署、流量检查、Suricata 规则、日志、事件响应和基础设施即代码的专门流程。

主要功能

  1. 01指导防火墙部署及 VPC 路由
  2. 02涵盖 Transit Gateway 集中检查
  3. 03配置域名过滤与 TLS 检查
  4. 04说明日志记录和 Suricata 规则调整
  5. 05路由流量丢弃及规则匹配诊断

适用场景

  1. 01将 VPC 流量导向防火墙端点
  2. 02检查多个 VPC 的流量
  3. 03按域名阻止出站连接
  4. 04排查流量丢弃或规则未匹配

MCP 相关

连接后,该技能通过 AWS MCP 服务执行命令;否则使用 AWS CLI。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aws/agent-toolkit-for-aws --skill networkfirewall

安装后在 Claude Code 中输入/networkfirewall确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
centralizing-inspection-with-a-transit-gateway-attached-firewall.md
deploying-a-firewall-and-routing-traffic-through-it.md
diagnosing-dropped-or-unmatched-traffic.md
enabling-firewall-logging-and-tuning-rules.md
filtering-outbound-traffic-by-domain-name.md
inspecting-encrypted-traffic-with-tls-inspection.md
managing-firewall-rules-as-infrastructure-as-code.md
migrating-from-a-third-party-firewall.md
responding-to-an-active-security-incident.md
writing-and-troubleshooting-stateful-suricata-rules.md

详细介绍

Network Firewall

概述

关于配置 AWS Network Firewall 的专业知识。AWS Network Firewall 是一项托管式有状态防火墙和入侵防御服务,使用 Suricata 检查引擎在 VPC 边界过滤流量。内容涵盖将防火墙置于流量路径中并通过其端点路由流量、使用附加到 transit gateway 的防火墙在多个 VPC 间集中检查、按域名过滤出站流量、日志记录和规则调优、检查加密流量的 TLS 检查,以及诊断流量被丢弃、放行或未匹配的原因。

此技能是一个路由器。每项客户任务都对应 references/ 下的一个参考文件。执行操作前,请完整阅读匹配的参考文件,然后遵循其中的约束和步骤。参考文件都是自包含的:每个文件都包含自己的决策表、约束、操作步骤和故障排查内容。

连接时,使用 AWS MCP 服务执行命令(提供沙盒化执行、审计日志和可观测性)。否则,使用 AWS CLI。Network Firewall 是区域级服务;每次运行 aws network-firewall 命令时,都要传入与防火墙所在区域匹配的 --region。防火墙的创建、删除和若干操作都是异步的:在依赖资源之前,轮询资源,直到其达到预期状态。

你需要执行哪种 Network Firewall 任务?

目标参考资料
在流量路径中放置防火墙,并通过其端点路由 VPC 流量部署防火墙并通过其路由流量
使用附加到 transit gateway 的防火墙,从一个位置检查多个 VPC 的流量使用附加到 transit gateway 的防火墙集中检查
按目标域名允许或阻止出站连接按域名过滤出站流量
启用警报、流量和 TLS 日志记录,并根据日志内容调优规则启用防火墙日志记录并调优规则
使用 ACM 证书解密并检查 TLS 流量使用 TLS 检查加密流量
编写自定义的有状态 Suricata 规则,并修复未匹配的规则编写和排查有状态 Suricata 规则
在活跃安全事件期间立即阻止特定指标响应活跃安全事件
在 CloudFormation 或 CDK 中管理防火墙、策略和规则将防火墙规则作为 IaC 管理
将第三方防火墙设备替换为 Network Firewall从第三方防火墙设备迁移
查明流量被丢弃、放行或未匹配规则的原因诊断流量被丢弃或未匹配的问题

路由说明

  • 先部署,再配置规则。 防火墙只有在 VPC 路由表将流量重定向到其端点后才会发挥作用;如果缺少路由,也不会报告错误。防火墙是新建的或流量未到达防火墙时,应先参考部署指南,再判断是否为规则问题。
  • 连接到 Transit Gateway 的防火墙与检查 VPC。 集中化指南使用原生的 Transit Gateway 连接型防火墙,无需手动构建检查 VPC 及其路由表。对于多 VPC 或多账户检查,应参考该指南,而不是手动构建检查 VPC。
  • 域名过滤匹配握手信息,而非 IP。 域名过滤指南根据 TLS SNI 和 HTTP Host 标头进行匹配,而不是查询 DNS;允许列表会静默丢弃同一协议下不匹配的流量。出站域名管控应参考该指南;如果客户需要匹配完整 URL 路径而非域名,则应使用 TLS 检查。
  • TLS 检查会改变规则的匹配对象。 任何需要对解密负载执行操作的规则,都必须先参考 TLS 检查指南。TLS 终止后,解密流量对有状态引擎而言是纯 HTTP,因此端口 443 和 tls 规则将不再匹配。客户准备针对加密流量编写规则前,应先参考该指南。
  • 根据症状诊断,不要靠猜。 诊断指南会读取端点状态消息(错误还是不可恢复故障)、测试路由对称性,并在进行任何重写前检查 HOME_NET、评估顺序和规则层级。对于“流量被丢弃”“流量本不该通过却通过了”或“我的规则没有匹配”等问题,应参考该指南。如果症状是“流量被丢弃,但完全没有警报日志”,则应怀疑后量子 ClientHello 分片;诊断和日志指南对此有说明。
  • 当前事件响应与配置。 响应指南适用于已部署防火墙上正在发生的事件:立即阻止某个指标、确认效果,然后撤销变更。对于“我正在遭受攻击,立即阻止”,应参考该指南,而不是流程较慢的部署或规则编写指南。
  • 规则编写与域名过滤。 编写 Suricata 规则指南涵盖自定义有状态规则(流量关键字、规则顺序、Suricata 引擎限制)。编写 IPS 或 IDS 规则时应参考该指南;客户只需允许或阻止域名时,则应参考域名过滤指南。
  • IaC 与控制台变更。 代码化管理指南适用于由 CloudFormation 或 CDK 管理的场景;不可变属性(容量、规则顺序)意味着结构错误可能导致资源被替换。客户通过模板管理防火墙时,应参考该指南。
  • 迁移与首次设置。 迁移指南适用于用现有规则集和流量路径替换第三方防火墙设备。对于“从 Palo Alto 或 FortiGate 迁出”,应参考该指南,而不是适用于全新部署的部署指南。

安全注意事项

此技能管理网络边界安全,因此配置错误会削弱防火墙后所有 VPC 的安全态势。每项任务都必须遵循以下要求:

  • 默认拒绝策略。 MUST 将有状态默认操作配置为拒绝(仅允许许可流量的白名单),而不是默认允许,这样未匹配任何规则的流量就会被阻止,而不是未经检查便通过。对于网络防火墙,故障时默认关闭是基本安全控制,而非可选项;过于宽松的规则集会使防火墙退化为直通设备。
  • 不得存在未被察觉的检查盲区。 MUST 确认流量确实经由防火墙端点路由并转发至有状态引擎;路由表配置错误,或无状态默认操作不是 aws:forward_to_sfe,都会导致流量未经检查,且不会报错。
  • 使用临时的最小权限凭证。 MUST 使用临时的最小权限凭证(有时限的角色会话),并将权限限定为每位操作员所需的特定 network-firewall: 操作和资源(例如 network-firewall:UpdateRuleGroup、network-firewall:DescribeFirewall),绝不能使用长期访问密钥或宽泛的管理权限,因为这些权限可以改变允许通过的流量。
  • 对日志和防火墙静态数据加密。 MUST 对所有接收防火墙日志(警报、流量或 TLS 日志)的目标进行加密:对 Amazon CloudWatch Logs 日志组使用客户管理的 AWS KMS 密钥(aws logs associate-kms-key);对 Amazon S3 存储桶使用 SSE-S3 或客户管理的 AWS KMS 密钥;对 Amazon Data Firehose 传输流使用客户管理的 AWS KMS 密钥,因为这些日志会暴露敏感网络元数据(源和目标 IP、域名及 SNI 值)。SHOULD 也使用客户管理的 AWS KMS 密钥对防火墙的静态数据进行加密。
  • 使用条件键限定日志目标资源策略的范围。 SHOULD 使用 aws:SourceArn(防火墙的 ARN)和 aws:SourceAccount 条件键,限定每个日志目标的资源策略(Amazon S3 存储桶策略、Amazon CloudWatch Logs 资源策略和 Amazon Data Firehose 传输流策略),以确保只有预期账户中的此防火墙能够写入目标,其他账户或服务无法写入(防止混淆代理问题)。
  • 使用 CloudTrail 记录 API 变更。 SHOULD 在账户上启用 AWS CloudTrail,以记录防火墙、策略、规则组和日志配置的 API 变更,供审计和事件审查使用。
  • 针对关键防火墙事件设置警报。 SHOULD 配置 CloudWatch 警报,对关键防火墙事件(端点故障、策略变更、容量警告)发出通知,以便及时发现并升级处理问题。MUST 使用客户管理的 AWS KMS 密钥加密用于这些警报通知的任何 SNS 主题,并将警报通知接收者限制为获授权的运维和安全人员,因为警报消息可能会暴露敏感防火墙元数据(端点状态、流量模式和容量)。
  • 各任务的具体要求。 每份参考资料都包含适用于其工作流的安全注意事项;操作前请阅读相应的参考资料。

其他资源

评论

支持 Markdown