Azure 防火墙 与流量检查

Azure 防火墙是一种托管的云原生网络安全服务,可为Azure虚拟网络提供集中的流量检查和筛选。 与第 4 层运行的网络安全组不同,Azure 防火墙检查第 3 层到第 7 层的流量。 此功能支持完全限定的域名(FQDN)筛选、威胁情报、入侵检测和预防(IDPS)和 TLS 检查。 你可以在中心虚拟网络的专用子网中部署 Azure 防火墙,并将来自辐射虚拟网络中工作负载的流量通过该防火墙进行路由,以便在流量到达目标之前对其进行检查。

本文介绍如何选择正确的Azure 防火墙 SKU,将防火墙定位在中心辐射型拓扑中,配置规则类型,并与 NAT 网关和路由服务器等互补服务集成。

本文介绍的内容

本文介绍使用Azure 防火墙进行集中网络流量检查。 了解以下内容:

  • 基于安全要求和工作负荷敏感度选择 SKU 层。
  • 中心放置和用户定义的路由(UDR)模式,用于强制流量通过防火墙。
  • DNAT、网络和应用程序规则的规则处理逻辑。
  • 适用于需要本地检查的环境的强制隧道
  • 高级层级中的 TLS 检查和 IDPS 功能。
  • 与用于 SNAT 端口扩展的 NAT 网关以及用于基于 BGP 的路由的路由服务器集成。

谁需要本文

当工作负荷需要以下一项或多项功能时部署Azure 防火墙:

  • 集中式出口控制:你需要限制工作负载可访问的外部 FQDN 和 URL,这超出了基于 NSG 的 IP 规则所能提供的范围。
  • 东西向检查:辐射型虚拟网络之间的流量必须先通过有状态检查点,防火墙才会允许其通过。
  • 合规要求的日志记录:监管框架要求对已允许和已拒绝的连接实现完整的第 7 层可见性,并细化到 FQDN 级别。
  • 威胁防护:需要基于签名的入侵检测和防护来识别恶意流量模式,包括命令和控制回调、攻击尝试和横向移动。
  • TLS 检查:在到达工作负载或离开网络之前,必须解密和检查加密流量(HTTPS)是否有威胁。

仅需要第 4 层数据包筛选且没有 FQDN 感知的组织应将 NSG 和 ASG 视为更简单、低成本的替代方法。

直接转移焦点:将本地防火墙规则库转换为Azure 防火墙策略。 从非 HTTP/S 流量的网络规则和基于 FQDN 的筛选的应用程序规则开始。 从迁移期间广泛的允许策略开始,然后在查看Azure 防火墙日志后收紧规则。

现代化重点:在中心使用 Azure 防火墙 作为统一的 SNAT 和 DNAT 处理点。 检查应用程序辐条之间以及辐条与 Internet 之间的流量,针对 AKS 和 Azure PaaS 出站流量使用应用程序规则和 FQDN 标记,并在应用程序各层之间交换敏感流量时规划 TLS 检查。

跨云焦点:在安全的虚拟中心部署Azure 防火墙以检查跨云传输流量。 为来自 AWS 或 Google Cloud 的 IPSec 隧道流量配置网络规则,并使用 IDPS 监视连接云之间的异常流量模式。

Azure 防火墙 SKU 层级

Azure 防火墙在三个 SKU 层中可用。 每一层都建立在前一层功能的基础之上。

Capability 基本 标准 高级
有状态数据包检查
FQDN 筛选(出站)
网络规则(IP、端口、协议)
应用程序规则(FQDN、URL)
NAT 规则 (DNAT)
威胁情报筛选 仅警报 ✔ (警报 + 拒绝) ✔ (警报 + 拒绝)
DNS 代理
网页类别
IDPS (入侵检测和防护)
TLS 检测
URL 筛选(完整路径)
显式代理
区域可用性 受限区域 所有区域 所有区域
最适用于 开发/测试、小型工作负荷 标准生产 高安全性、以合规为导向

如何选择您的SKU

使用以下决策条件:

  • 如果有开发/测试环境或需要基于 FQDN 的出口筛选的小型工作负荷,而无需威胁情报筛选(拒绝模式)或高级检查,请选择“基本”。 基本 SKU 包含仅警报模式下的威胁情报功能,但不支持阻止模式、DNS 代理或 Web 类别筛选。 基本 SKU 除了需要 AzureFirewallManagementSubnet 外,还需要专用的 AzureFirewallSubnet(至少为 /26),并且仅在部分区域可用。
  • 对于需要基于威胁情报的筛选、用于 FQDN 规则解析的 DNS 代理、Web 类别筛选以及通过 Azure 防火墙管理器 实现的集中策略管理的生产工作负载,请选择标准。 标准版提供完整的有状态检测引擎和威胁情报源,可阻止与已知恶意 IP 地址和域名建立连接。
  • 当法规或安全要求规定必须对加密流量进行 TLS 检查、使用规则持续更新的基于签名的 IDPS(涵盖 50 多个类别的 67,000 多条签名,并实时更新),或进行 FQDN 之外的完整 URL 路径过滤时,请选择Premium。 对于金融服务、医疗保健和政府等必须进行加密流量检查的行业,需要使用高级版。

注释

在不重新部署防火墙的情况下从标准升级到高级版。 从高级降级到标准版需要重新部署。

枢纽部署和 UDR 路由模式

在中心虚拟网络中名为 AzureFirewallSubnet 的专用子网内部署 Azure 防火墙。 此子网需要最小大小 /26(59 个可用 IP 地址)。

路由体系结构

中心辐射拓扑示意图,其中辐射子网流量在到达 Internet 或其他辐射网络之前,会先通过中心虚拟网络中的 Azure 防火墙 路由。

在中心-辐射拓扑中,辐射工作负载子网不会将流量直接路由到互联网或其他辐射节点。 相反,每个辐射子网上的 UDR 将默认路由 (0.0.0.0.0/0) 设置为Azure 防火墙专用 IP 地址。 此模式可确保所有流量(包括南北向[面向互联网]流量和东西向[Spoke 到 Spoke]流量)都经过防火墙进行检查。

UDR 配置模式:

路由表(应用于) 地址前缀 下一个跃点类型 下一个跃点地址
辐射子网 A 0.0.0.0/0 虚拟设备 防火墙专用 IP
辐射子网 A 10.1.0.0/16(其他分支) 虚拟设备 防火墙专用 IP
辐射子网 B 0.0.0.0/0 虚拟设备 防火墙专用 IP
辐射子网 B 10.0.0.0/16(其他辐条) 虚拟设备 防火墙专用 IP

AzureFirewallSubnet 本身在大多数情况下不需要 UDR,因为防火墙会使用系统路由通过 VNet 对等互连访问辐射虚拟网络。 与Azure 路由服务器集成时,防火墙子网将通过 BGP 了解路由。 此方法无需在网络增长时进行手动路由维护。

Tip

Azure Virtual Network Manager可以自动配置路由表,以将Azure 防火墙用作下一跃点,从而减少跨多个分支订阅的手动 UDR 管理。

子网要求

子网 最小尺寸 Purpose 注释
AzureFirewallSubnet /26 托管Azure 防火墙实例 必须精确命名为AzureFirewallSubnet
AzureFirewallManagementSubnet /26 管理流量(仅限基础 SKU) 基本 SKU 是必需的;对于其他 SKU 中的强制隧道,可选

有关中心虚拟网络设计和子网规划的详细信息,请参阅 中心辐射型拓扑

规则类型和处理逻辑

Azure 防火墙通过 Azure 防火墙 Policy 处理规则。 规则组织为规则集合,这些规则分组到规则集合组中。 防火墙按以下优先级顺序评估规则:

  1. DNAT 规则 (目标网络地址转换):首先处理。 将来自公共 IP 的入站流量转换为防火墙后面的专用 IP。
  2. 网络规则:第二个处理。 根据源 IP、目标 IP、端口和协议(第 3/4 层)允许或拒绝流量。
  3. 应用程序规则:最后处理。 根据 FQDN、URL 或 Web 类别(第 7 层)允许或拒绝出站流量。

在每个规则类型中,规则集合组按优先级(最低数字 = 最高优先级)进行评估。 在组中,规则集合按优先级进行评估。 第一个匹配规则确定操作(允许或拒绝),并停止进一步评估。

DNAT 规则

使用 DNAT 规则通过防火墙的公共 IP 地址发布内部服务。 防火墙将目标地址从其公共 IP 转换为后端服务的专用 IP。 常见方案包括:

  • 通过端口 443 上的防火墙公共 IP 公开内部 Web 服务器
  • 提供对跳转框的受控 RDP 或 SSH 访问,而无需向 VM 分配公共 IP
  • 发布需要从 Internet 进行入站访问的非 HTTP/S 服务
Example: Translate inbound TCP 443 on firewall public IP → 10.1.2.4:443 (internal web server)

DNAT 规则会隐式添加一个对应的网络规则来允许转换后的流量。 DNAT 规则匹配后,流量将被转换并允许,无需进一步的网络规则处理。 出于安全考虑,请在 DNAT 规则中将源 IP 地址限制为特定的互联网来源,而不要使用通配符。

网络规则

网络规则筛选第 3 层和第 4 层的流量。 如果需要根据源 IP 地址、目标 IP 地址、目标端口和协议允许或拒绝流量,请使用网络规则。 网络规则不执行 FQDN 解析。 它们严格地对 IP 地址进行操作。 常见用例包括:

  • 允许辐射网络之间通过特定端口进行通信(例如,TCP 1433 端口上的 SQL Server)。
  • 允许 NTP(UDP 123)到特定的时间服务器。
  • 使用拒绝规则阻止流向已知恶意 IP 范围的流量。
  • 允许 ICMP 在特定子网之间进行网络诊断。

网络规则支持 TCP、UDP、ICMP 和任何协议类型。 可以将 IP 地址、IP 范围、服务标记和 IP 组指定为源和目标。

应用程序规则

应用程序规则根据 FQDN、URL 和 Web 类别筛选出站 HTTP/S 和 MSSQL 流量。 应用程序规则需要用于 FQDN 解析的 DNS 代理功能。 在以下情况下使用应用程序规则:

  • 需要允许访问特定的 FQDN(例如, *.microsoft.comstorage.blob.core.chinacloudapi.cn)。
  • 需要按 URL 路径(仅限高级 SKU)进行筛选,例如允许github.com/myorg/*但阻止其他GitHub路径。
  • 需要允许或阻止整个 Web 类别(例如,允许“开发人员工具”并阻止“赌博”)。

应用程序规则为常见的Azure服务(如 Windows 更新、Azure 备份 和 HDInsight)提供 FQDN 标记,以便通过将所需的 FQDN 分组到单个标记来简化规则创建。

Important

在Azure 防火墙上启用 DNS 代理时,防火墙充当工作负荷的 DNS 解析程序。 将 VNet 的 DNS 设置设为指向防火墙的专用 IP 地址,以便基于 FQDN 的规则能够正确解析。 有关 DNS 体系结构的详细信息,请参阅 DNS 安全性和专用名称解析

SNAT 行为

默认情况下,Azure 防火墙将 SNAT(源网络地址转换)应用于发往公共 IP 地址的出站流量。 当目标为专用 IP 范围(RFC 1918)或共享地址空间(RFC 6598)时,防火墙不会 SNAT 流量。 防火墙将 Internet 绑定连接的源 IP 转换为其公共 IP 地址之一。 每个公共 IP 为每个后端实例提供 2,496 个 SNAT 端口。

对于具有高出站连接速率的工作负荷,请与 NAT 网关集成,以扩展到每个公共 IP 的 64,512 个端口(最多 16 个公共 IP,总共约 100 万个 SNAT 端口)。

将 NAT 网关与 AzureFirewallSubnet 关联后,所有出站互联网流量都会自动使用 NAT 网关的公共 IP 地址。 防火墙继续检查流量,但 NAT 网关处理 SNAT 转换。 不会发生双重 NAT。

注释

与区域冗余的 Azure 防火墙配合使用的 NAT 网关需要 StandardV2 NAT 网关 SKU。 虚拟 WAN安全中心体系结构不支持 NAT 网关。

防火墙管理器和策略继承

Azure 防火墙管理器跨多个Azure 防火墙实例提供集中的安全策略和路由管理。 关键功能包括:

  • 策略层次结构:使用组织范围的规则创建基本(父级)策略,并允许子团队创建从父级继承的子策略。 无论子优先级值如何,父规则始终优先。
  • 跨区域管理:防火墙策略是可与任何区域或订阅中的防火墙关联的全局资源。
  • 多防火墙治理:在不同区域的中心防火墙之间,或在受保护的 虚拟 WAN 中心之间,应用一致的安全态势。

NAT 规则特定于防火墙,不会继承自父策略。 威胁情报模式会被继承,但在子策略中只能用更严格的模式覆盖。 包含零个或一个防火墙关联的策略,无需额外付费。 额外关联将产生费用。

强制隧道

在某些法规环境中,所有 Internet 绑定的流量必须先通过本地检查点进行路由,然后才能到达 Internet。 Azure 防火墙支持强制隧道来满足此要求。

启用强制隧道时:

  • AzureFirewallManagementSubnet 将防火墙管理流量直接传输到互联网。 此子网必须存在一条到 0.0.0.0/0 的路由,且下一跳为互联网。 无法通过本地检查强制管理流量。
  • AzureFirewallSubnet 通过 ExpressRoute 或 VPN 网关 将发往 Internet 的工作负载流量路由到本地防火墙或第三方 NVA。
  • 强制隧道模式下不支持 DNAT 规则,因为入站流量无法直接到达防火墙公共 IP。
  • 配置强制隧道时,防火墙不需要在 AzureFirewallSubnet 上配置公共 IP,因为所有出站流量都经由本地部署路径出站。

如果符合性要求要求本地能够查看所有 Internet 绑定流量,或者需要将Azure 防火墙与现有本地安全堆栈链接在一起,请使用强制隧道。 常见场景包括受数据驻留法规约束的金融服务环境,以及具有集中式互联网出口要求的政府网络。

Important

在强制隧道模式下,AzureFirewallManagementSubnet 需要其自己的公共 IP,以及一个目标为 0.0.0.0/0、下一跃点为 Internet 的 UDR。 此配置可确保Azure可将管理通道保留到防火墙。

TLS 检查(高级版)

Azure 防火墙 Premium 截获出站 HTTPS 连接、解密流量、根据 IDPS 签名和应用程序规则检查流量,然后重新加密并转发流量。 此过程需要存储在Azure 密钥保管库中的中间 CA 证书。

证书要求

Requirement 规格
证书类型 中间证书颁发机构
密钥大小 RSA 2048 位最小值
CA 标志 TRUE
密钥用法 KeyCertSign
有效性 至少提前 1 年
存储 Azure 密钥保管库(必须可导出)

防火墙使用中间 CA 证书为被拦截的连接动态生成服务器证书。 最终用户浏览器和应用程序必须在其证书存储中信任组织的根 CA 或中间 CA,以避免信任警告。

入侵检测与预防系统(IDPS)

高级 SKU 提供全托管的 IDPS 引擎,涵盖 50多个类别的 67,000多条规则。 签名库持续更新,每天都会发布 20 到 40 条以上的新规则。 IDPS 以两种模式运行:

  • 告警模式:记录签名匹配事件,但不阻断流量。 在初始部署和优化期间使用。
  • 警报和拒绝模式:记录并阻止与 IDPS 签名匹配的流量。 在优化后在生产中使用。

IDPS 类别涵盖恶意软件命令和控制、网络钓鱼、木马、僵尸网络、攻击工具包、漏洞和 SCADA/ICS 协议。

注意

TLS 检查引入了延迟,并具有隐私影响。 确保组织的法律和合规性团队批准对加密流量的检查。 使用绕过规则根据需要排除敏感类别(医疗保健、银行)。

AKS 出口筛选

当Azure Kubernetes 服务 (AKS)群集需要受控出口时,Azure 防火墙为群集节点提供基于 FQDN 的出站筛选。 如果没有出口筛选,AKS 节点可以访问任何 Internet 终结点,这会增加供应链和数据外泄攻击的攻击面。

若要实现此模式,

  1. 部署将 outboundType 设置为 userDefinedRouting 且在节点子网上使用自定义路由表的 AKS。
  2. 将默认路由(0.0.0.0/0)设置为Azure 防火墙专用 IP。
  3. 在防火墙策略中创建应用程序规则,以允许所需的 AKS FQDN(容器注册表、API 服务器终结点、Microsoft包存储库)。
  4. 为所需的非 HTTP/S 终结点(NTP、DNS、隧道连接)创建网络规则。

此模式使安全团队能够了解和控制 AKS 节点可以访问的外部终结点,同时允许群集正常运行。 所需的 FQDN 因 AKS 功能集而异。 使用 GPU 节点、Azure Monitor或Azure Policy的群集需要额外的已批准列表条目。

有关详细的 FQDN 要求和规则示例,请参阅使用Azure 防火墙来保护 AKS 部署

注释

使用 Azure 防火墙 的 AKS 出口筛选需要在平台和应用程序团队之间进行仔细协调。 FQDN 规则缺失会导致 Pod 调度失败和镜像拉取错误。 先采用较为宽松的策略,在通过防火墙日志观察到流量模式后,再收紧策略。

设计注意事项

直接迁移防火墙设计焦点

  • 将本地防火墙规则转换为Azure 防火墙策略:对需要 FQDN 筛选的 HTTP/S 或 MSSQL 目标使用非 HTTP/S 协议的网络规则和应用程序规则。
  • 从反映当前安全状况的广泛允许规则开始,然后使用Azure 防火墙日志确定所需的目标和端口,在迁移后将其收紧。
  • 使用 IP 组为源区域和目标区域建模,因此规则维护遵循现有的分段边界。
  • 启用第一天的诊断设置,以便在缩小访问权限之前,将Azure流量模式与本地基线进行比较。

聚焦防火墙设计现代化

  • 将中心防火墙用作应用程序辐射网络的集中式 SNAT 和 DNAT 处理点,从而使入站和出站策略保留在由 IT 管理的中心辐射网络中。
  • 在应用程序层之间需要东西部 TLS 检查或生产 IDPS 强制实施时启用Azure 防火墙 Premium。
  • 使用 FQDN 标记和应用程序规则允许 AKS 和 Azure PaaS 依赖项,而无需维护大型目标 IP 列表。
  • 结合 Front Door 或 Application Gateway 设计审查 DNAT 要求,以确保入站流量仅通过经批准的检查路径到达后端辐射网络。

跨云防火墙设计焦点

  • 当Azure是分支、Azure和其他云网络的传输点时,在受保护的虚拟中心部署Azure 防火墙。
  • 使用网络规则在路由到达Azure后检查来自 AWS 传输网关、AWS 虚拟专用网关或 Google Cloud VPN 附件的 IPSec 隧道流量。
  • 使 IDPS 能够检测异常的东西端和跨云流量模式,这些模式可以指示云环境之间的横向移动。
  • 启用威胁情报筛选,通过单个策略图面阻止所有连接的云中的已知恶意目标。

先决条件

在部署Azure 防火墙之前:

  • AzureFirewallSubnet:中心虚拟网络必须包含一个名为最小大小 /26 的专用子网 AzureFirewallSubnet 。 有关子网规划指南,请参阅 虚拟网络和子网设计
  • 中心辐射型或虚拟 WAN 拓扑:在中心部署 Azure 防火墙,用于路由来自辐射网络的流量。 有关拓扑选项,请参阅 中心辐射拓扑虚拟 WAN
  • IP 地址计划:为防火墙子网、管理子网(如果使用强制隧道)和任何公共 IP 地址保留地址空间。 请参阅 IP 地址规划
  • Azure 防火墙管理器:如果需要跨多个防火墙实例共享基本规则的策略层次结构,请使用Azure 防火墙管理器
  • Log Analytics工作区:在部署之前为防火墙诊断日志创建工作区,以便从第一天监视流量并排查规则问题。

安全注意事项

  • 日志记录:启用诊断设置,将Azure 防火墙日志发送到Log Analytics工作区。 结构化日志可提供对每一次被允许和被拒绝的连接的 FQDN 级可见性,从而支持审计和取证分析。
  • 可用性:跨可用性区域部署Azure 防火墙,以最大化其可用性 SLA。 有关当前 SLA 百分比,请参阅Azure 防火墙的 SLA
  • 分层防御:Azure 防火墙补充,但不替换 NSG。 在子网和 NIC 级别应用 NSG 进行微分段。 使用防火墙进行集中式策略、威胁情报和第 7 层检查。
  • 正确调整所检查的大小:强制每个流通过防火墙,包括 Web 到应用和应用到数据库等应用程序内部层,可增加延迟和每千兆字节处理成本。 对受信任层之间的东西向流量使用 NSG 和 ASG,并将防火墙检查留给跨越信任边界的流量:面向 Internet 的流量、跨辐条流量、混合流量或跨云流量。 这种方法使防火墙将重点放在能从检查中获益的流量上,并避免不必要的开销。
  • DDoS 保护:使用 Azure DDoS 防护来保护与Azure 防火墙关联的公共 IP。 请参阅 DDoS 保护
  • ExpressRoute 流量:使用 ExpressRoute 时,请将 UDR 配置为通过Azure 防火墙定向专用对等互连流量,以检查混合流量流。

Learn more

后续步骤

Tip

自行探索? 返回到 概述导航器 ,按功能查找下一篇文章。

接下来是直接迁移过程中的下一步:

为迁移的网络设置监视:配置防火墙后,使用网络观察程序验证连接和性能。

现代化之旅的下一步:

使用 WAF 保护 Web 应用程序:在 Front Door 或应用程序网关上为面向客户的 Web 应用添加Web 应用程序防火墙。

跨云之旅的下一步:

设置跨云监视:跨云资产在操作上很难进行故障排除。 监视至关重要,不是可选的。