保护Azure 网络观察程序部署

Azure 网络观察程序为 Azure IaaS 资源提供监视、诊断和流量日志记录工具。 它使你能够捕获数据包、分析流日志、诊断连接问题以及检查网络安全组规则。 由于 网络观察程序 对您的网络流量和配置具有广泛的可见性,因此,确保其部署、其数据输出以及访问它的身份的安全至关重要。 本文提供有关Azure 网络观察程序的安全建议。

有关Azure网络安全服务的概述及其协同工作原理,请参阅 什么是Azure网络安全?

本文中的安全建议实施零信任原则:“显式验证”、“使用最低特权访问”和“假设违规”。 有关全面的零信任指南,请参阅 零信任指南中心

特定于服务的安全性

大多数网络观察程序工具都是观察工具,但数据包捕获等功能在目标 VM 上安装和使用 AzureNetworkWatcherExtension,并且需要计算和扩展权限。 由于网络观察程序收集敏感数据(包括数据包有效负载、流记录和拓扑信息),因此网络观察程序及其数据存储视为安全敏感组件:

  • 限制启用 网络观察程序 的区域:在包含虚拟网络资源的每个区域中,系统都会自动启用 网络观察程序。 如果不需要特定区域中的诊断,请禁用网络观察程序以减少攻击面,但请仔细计划:删除区域网络观察程序实例会删除所有 网络观察程序正在运行的操作、历史数据和警报,而无需选择还原。 有关详细信息,请参阅启用或禁用 Azure 网络观察程序

  • 将流日志存储帐户视为安全敏感:流日志和数据包捕获包含详细的网络流量数据。 应以对待其他安全敏感型数据存储同等严格的要求,限制对存储此数据的存储账户的访问。 有关详细信息,请参阅配置 Azure 存储防火墙和虚拟网络

  • 了解 网络观察程序 的范围:网络观察程序 的范围按订阅和区域分别限定。 每个订阅每个区域可以有一个网络观察程序实例。 在跨多个订阅进行操作时,请据此规划您的身份和访问控制。 有关详细信息,请参阅 什么是 Azure 网络观察程序?

网络安全

网络观察程序主要是分析网络安全的工具。 以下建议侧重于保护网络观察程序依赖的网络路径和存储资源。 有关保护虚拟网络本身的建议,请参阅 Secure Azure 虚拟网络 部署

  • 使用虚拟网络流日志而不是 NSG 流日志:NSG 流日志将于 2027 年 9 月 30 日停用,并且 2025 年 6 月 30 日之后无法创建新的 NSG 流日志。 将现有部署迁移到在虚拟网络范围内运行的虚拟网络流日志,消除嵌套 NSG 评估中的重复日志记录并提供加密状态跟踪。 在在同一范围内启用虚拟网络流日志之前禁用 NSG 流日志,以避免冗余数据和成本。 有关详细信息,请参阅 从 NSG 流日志迁移到虚拟网络流日志虚拟网络流日志概述

  • 限制对流日志存储帐户的网络访问:在接收流日志的存储帐户上配置防火墙和虚拟网络规则。 如果将存储帐户放置在防火墙后面,请允许受信任的Azure服务,以便网络观察程序可以写入流日志数据,或使用存储帐户的专用终结点或服务终结点。 有关详细信息,请参阅 网络观察程序 常见问题

  • 为流日志存储账户使用专用终结点:如果流日志包含敏感的流量元数据,请为存储账户配置专用终结点,以使数据传输保留在 Microsoft 主干网络上,而不经过公共互联网。 有关详细信息,请参阅对 Azure 存储使用专用端点

  • 安全数据包捕获存储:数据包捕获可以包含完整的有效负载数据,并存储在 VM 的本地磁盘或存储 Blob 中。 对应用于流日志存储的数据包捕获存储帐户应用相同的网络访问限制。 有关详细信息,请参阅数据包捕获概述

身份和访问管理

  • 分配网络观察程序操作的最小特权角色:网络参与者内置角色授予对网络观察程序功能的访问权限,但有意排除 Microsoft.Storage/*Microsoft.Compute/*Microsoft.OperationalInsights/workspaces/* 操作。 仅向需要配置流日志、数据包捕获或流量分析的标识分配其他权限。 有关详细信息,请参阅使用 网络观察程序 所需的 RBAC 权限

  • 为特定任务创建自定义 RBAC 角色:不要在订阅级别授予 Contributor 或 Owner 角色,而应创建仅包含各团队所需的 网络观察程序 操作的自定义角色。 例如,监控团队可能需要对流日志的读取权限,但无权创建数据包捕获。 有关详细信息,请参阅 Azure 自定义角色

  • 对虚拟网络流日志使用托管标识:配置用户分配的托管标识,以授权将流日志写入存储帐户。 此方法无需存储帐户密钥或 SAS 令牌,并符合零信任原则。 将“存储 Blob 数据参与者”角色分配给目标存储帐户上的托管标识。 有关详细信息,请参阅 虚拟网络流日志的托管标识

  • 限制谁可以启动数据包捕获:数据包捕获会创建 VM 扩展,并且可以访问原始网络流量。 将 Microsoft.Network/networkWatchers/packetCaptures/write 权限限制为具有有效负载级别检查所需的安全和运营团队。 有关详细信息,请参阅使用 网络观察程序 所需的 RBAC 权限

  • 谨慎限定流量分析权限范围:除了 网络观察程序 之外,流量分析还需要具备对 Log Analytics 工作区、数据收集规则和数据收集终结点的权限。 流量分析不支持使用从管理组继承的权限,请在订阅或资源组级别分配这些权限。 有关详细信息,请参阅使用 网络观察程序 所需的 RBAC 权限

数据保护

  • 在流日志存储帐户上启用加密:将Azure 存储加密与Azure管理的密钥或客户管理的密钥一起使用,以便静态流日志数据。 如果使用客户管理的密钥,请注意轮换密钥会导致虚拟网络流日志停止 —必须在密钥轮换后禁用并重新启用流日志。 有关详细信息,请参阅静态数据的 Azure 存储加密

  • 保护静态数据包捕获数据:通过Azure 存储加密来加密存储在Azure Blob 存储中的数据包捕获。 在 VM 的本地磁盘上存储捕获时,请使用Azure 磁盘加密或主机上的加密来加密磁盘。 有关详细信息,请参阅数据包捕获概述

  • 为数据包捕获存储启用密钥访问:数据包捕获使用 SAS 令牌授权写入存储帐户,并且必须在存储帐户上启用密钥访问来授权这些 SAS 令牌。 如果未启用密钥访问,请改为将数据包捕获保存到 VM 的本地磁盘。 有关详细信息,请参阅数据包捕获概述

  • 限制流量分析对 Log Analytics 工作区的访问权限:流量分析会将聚合和扩充后的流量数据发送到 Log Analytics 工作区。 使用工作区级访问控制或资源级 RBAC 来限制谁可以查询此数据。 有关详细信息,请参阅 管理对 Log Analytics 工作区的访问权限

日志记录和监控

  • 为 网络观察程序 操作启用活动日志收集:将 Azure 活动日志路由到 Log Analytics 工作区或存储帐户,以便审核是谁创建、修改或删除了 网络观察程序 资源、流日志和数据包捕获。 有关详细信息,请参阅 Azure 活动日志

  • 将流量分析与 Microsoft Sentinel 集成:将流量分析数据连接到 Microsoft Sentinel,以便进行威胁检测、调查以及与其他安全数据源的关联分析。 Sentinel 提供用于检测以下情况的分析规则,例如 RDP 暴力破解、端口探测、流量异常、端口扫描、过多的连接失败、SMB 异常、信标通信和端口滥用。 有关详细信息,请参阅将 Microsoft Sentinel 与流量分析集成

  • 使用流量分析检测网络异常:在流日志上启用流量分析,以识别 Internet 的开放端口、与已知错误的 IP 地址通信的 VM 以及意外的跨区域流量。 使用 Azure 门户中的流量分析仪表板实现持续的安全可见性。 有关详细信息,请参阅流量分析

  • 通过流量分析实施零信任分段:使用流量分析数据,将网络策略从默认允许转变为默认拒绝。 分析观察到的流量模式,以创建选择性允许规则、检测来自高风险区域的流量,并确定网络分段差距。 有关更多信息,请参阅借助流量分析应用零信任原则

合规性和治理

  • 使用 Azure Policy 强制启用流日志:使用内置的 Azure 策略跨你的订阅审核并自动部署虚拟网络流日志。 此方法可确保新虚拟网络自动启用流日志记录,并标记不符合资源。 有关详细信息,请参阅使用 Azure Policy 管理虚拟网络流日志。

  • 使用 Azure Policy 强制实施流量分析:使用内置策略审核是否已对流日志启用流量分析。 用于流量分析的内置 deployIfNotExists 策略配置 NSG 流日志,该日志在 2025 年 6 月 30 日之后无法新建,2027 年 9 月 30 日停用:对新部署使用虚拟网络流日志。 有关详细信息,请参阅使用 Azure Policy 管理流量分析从 NSG 流日志迁移到虚拟网络流日志

  • 使用 NSG 诊断和有效的安全规则进行合规性审核:在进行网络更改之前和之后,请使用 NSG 诊断来验证特定流量流是否被正确允许或拒绝。 使用生效中的安全规则,将所有入站和出站规则导出为可下载的 CSV 文件,用于审计文档记录。 有关详细信息,请参阅 NSG 诊断概述有效安全规则概述

  • 在更改前后验证 IP 流规则:使用 IP 流验证确认在将更改部署到生产之前,是否将预期允许和拒绝规则应用于特定 VM。 这可以防止因 NSG 或 Azure Virtual Network Manager 规则配置错误而导致的意外暴露。 有关详细信息,请参阅 IP 流验证概述

备份和恢复

  • 配置流日志保留策略:对于 NSG 流日志,请将保留策略设置为在定义的时间段后自动删除旧数据,最长为 365 天。 对于虚拟网络流日志,请在常规用途 v2 存储账户上使用 Azure 存储生命周期管理,以实现自动分层存储和删除。 有关详细信息,请参阅 NSG 流日志概述优化成本,方法是管理数据生命周期

  • 对流日志数据使用异地冗余存储:如果流日志对合规性或取证调查至关重要,请将日志存储在异地冗余存储(GRS)或读取访问异地冗余存储(RA-GRS)帐户中,以防止区域性中断。 有关详细信息,请参阅 Azure 存储冗余

  • 备份流量分析配置:记录或导出流量分析配置,包括关联的Log Analytics工作区、数据收集规则和流日志设置。 如果需要重新创建环境,配置记录可以减少恢复时间。 有关详细信息,请参阅流量分析

  • 规划客户管理的密钥轮换影响:如果在流日志存储帐户上使用客户管理的密钥,请记录在密钥轮换后禁用和重新启用流日志的过程。 将此流程纳入运维运行手册中,以避免日志记录出现遗漏。 有关详细信息,请参阅 虚拟网络流日志概述

后续步骤

\