你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure 虚拟网络是 Azure 中专用网络的基本构建基块,使 Azure 资源能够安全地相互通信、Internet 和本地网络。 部署虚拟网络时,必须实施安全控制来保护网络基础结构,控制流量流,并防止对资源进行未经授权的访问。
本文提供有关如何最好地保护 Azure 虚拟网络部署的指导。
网络安全
虚拟网络的网络安全性侧重于控制流量流、实现网络分段以及防范外部威胁。 适当的网络安全控制有助于隔离工作负荷,防止横向移动,并防范分布式拒绝服务攻击。
使用网络安全组(NSG)和应用程序安全组细分工作负荷:将 NSG 应用于子网和网络接口,以基于源 IP、目标 IP、端口和协议控制入站和出站流量。 使用应用程序安全组以逻辑方式对虚拟机进行分组,并根据应用程序结构定义网络安全策略。 使用“默认拒绝,允许例外”方法最大程度地减少攻击面。 有关详细信息,请参阅 网络安全组。
启用 NSG 流日志进行流量监视:配置 NSG 流日志以捕获流经网络安全组的 IP 流量的相关信息。 将这些日志发送到 Azure Monitor Log Analytics,并使用流量分析可视化网络活动并确定安全威胁。 有关详细信息,请参阅 NSG 流日志。
部署 Azure 防火墙进行集中式有状态保护:使用 Azure 防火墙通过完全有状态数据包检查控制虚拟网络中的入站和出站流量。 使用集中式防火墙策略大规模定义和管理应用程序和网络规则。 Azure 防火墙支持 DNAT 来保护入站访问,SNAT 可实现一致的出站连接。 为了增强安全性,启用基于威胁情报的筛选来自动对已知恶意 IP 地址和域的流量发出警报并拒绝流量,并使用 Azure 防火墙高级版和入侵检测和防护系统(IDPS)监视和阻止恶意网络流量。 与 Azure Monitor 集成,实现完整的流量可见性和日志分析。 有关详细信息,请参阅 Azure 防火墙。
启用 DDoS 防护标准:在虚拟网络上激活 DDoS 防护标准,以防止分布式拒绝服务攻击。 此服务为公共 IP 地址提供增强的 DDoS 缓解功能和实时监视。 有关详细信息,请参阅 Azure DDoS 防护标准版。
使用服务标记简化安全规则:将特定 IP 地址替换为 NSG 规则中的服务标记,以允许与 Azure 服务通信,同时保持安全性。 Microsoft随着 IP 范围的变化自动更新服务标记。 有关详细信息,请参阅服务标记。
为取证分析配置数据包捕获:在虚拟机上启用数据包捕获,或使用 VPN 网关数据包捕获来记录网络流量,以便进行安全分析和事件调查。 有关详细信息,请参阅 网络观察程序数据包捕获。
实现 Azure Bastion 以实现安全的 RDP/SSH 访问:使用 Azure Bastion 通过 RDP 或 SSH 安全地连接到虚拟机,而无需将其公开到公共 Internet。 Bastion 无需在 VM 上使用公共 IP 地址,并减少攻击面。 有关详细信息,请参阅 Azure Bastion。
为出站流量实现 Azure NAT 网关:使用 Azure NAT 网关为虚拟网络资源提供静态出站 IP 地址,确保安全且可缩放的出口流量。 NAT 网关还提供防止端口耗尽的保护。 有关详细信息,请参阅 Azure NAT 网关。
使用专用终结点和 Azure 服务的专用链接:使用 Azure 专用链接通过虚拟网络中的专用终结点访问 Azure PaaS 服务(例如 Azure 存储、SQL 数据库)。 专用链接消除了对公共 Internet 的暴露,并通过在 Azure 主干网络中保留流量来提高安全性。 有关详细信息,请参阅 Azure 专用链接。
默认情况下将子网配置为专用:对于不需要公共 Internet 访问的子网,请将其配置为专用子网。 如果需要,请使用 Azure 防火墙或 NAT 网关进行受控的出站访问。 有关详细信息,请参阅 Azure 中的默认出站访问
应用自适应网络强化建议:使用 Microsoft Defender for Cloud 自适应网络强化接收基于机器学习的建议,以基于实际流量模式和威胁智能来收紧 NSG 规则。 有关详细信息,请参阅 自适应网络强化。
使用深层防御原则进行设计:实施多层网络安全控制来创建冗余保护。 使用分段策略隔离关键任务,并在每个网络边界应用不同的安全措施,以防止潜在的安全漏洞。
启用虚拟网络加密:使用 Azure 虚拟网络加密加密在同一虚拟网络中的虚拟机与区域与全局对等互连虚拟网络之间传输的数据。 这为敏感数据通信提供了额外的保护。 有关详细信息,请参阅 虚拟网络加密。
维护更新的安全外围:定期查看和更新安全设置,包括 NSG、应用程序安全组和 IP 地址范围。 过时的规则可能与当前的网络体系结构或流量模式不一致,可能会造成安全漏洞。 有关详细信息,请参阅 网络安全组概述。
限制公共 IP 地址使用:通过使用 Azure Front Door 或应用程序网关等服务的共享公共 IP 地址,最大程度地减少公共 IP 地址的数量。 如果需要公共 IP,请实现适当的端口管理和请求验证。 有关详细信息,请参阅 公共 IP 地址。
标识管理
虚拟网络的标识管理涉及控制对网络资源的访问,并确保只有经过授权的用户和服务才能修改网络配置。 适当的标识控制可防止未经授权的网络更改和维护网络安全状况。
使用 Azure RBAC 进行网络资源访问:分配适当的内置角色,例如网络参与者或具有特定权限的自定义角色,以控制谁可以创建、修改或删除虚拟网络和相关资源。 遵循最小特权原则。 有关详细信息,请参阅 用于网络的 Azure RBAC。
启用 Microsoft Entra ID 与 SSO 集成:使用 Microsoft Entra ID 作为集中式标识提供者来管理对网络资源和相关 Azure 服务的访问权限。 实现单一登录(SSO),而不是为每个服务配置单独的独立凭据,以减少攻击面并最大程度地减少密码要求。 Microsoft Entra ID 集成可确保跨网络基础结构进行一致的身份验证和授权。 有关详细信息,请参阅 单一登录应用程序。
为网络管理员实施条件访问:配置条件访问策略以要求多重身份验证,并根据用户位置、设备符合性和风险级别限制对网络管理作的访问。 有关详细信息,请参阅 条件访问。
对 Azure 资源使用托管标识:为需要访问其他 Azure 服务的 Azure 资源启用托管标识,而无需在虚拟网络配置中存储凭据。 这提供了安全的无凭据身份验证。 有关详细信息,请参阅 托管身份。
定期评审和协调用户访问:执行常规访问评审,以有效地管理组成员身份、对企业应用程序和角色分配的访问权限。 确保只有活动用户能够继续访问网络管理功能。 有关详细信息,请参阅 Azure 标识访问评审。
对网络角色应用最低特权原则:以不授予访问权限为原则配置角色为基础的访问控制。 确保用户只能根据作业功能的要求修改网络设置,以最大程度地降低潜在的安全风险。 有关详细信息,请参阅 Azure RBAC 最佳做法。
特权访问
虚拟网络的特权访问管理侧重于保护管理作,并确保授权人员通过适当的监督和监视执行网络配置更改。
为网络管理员强制实施多重身份验证:要求具有网络管理权限的所有用户进行 MFA,以在密码之外添加额外的安全层。 MFA 可显著降低基于凭据的攻击的风险。 有关详细信息,请参阅 Microsoft Entra 多重身份验证。
对网络操作使用即时访问:实行 Microsoft Entra 特权身份管理以提供对网络管理角色的限时访问。 JIT 访问可缩短特权凭据的暴露窗口。 有关详细信息,请参阅 Privileged Identity Management。
监视特权网络活动:启用日志记录和监视来监控所有特权网络操作,包括 NSG 更改、路由表修改和防火墙规则更新。 使用 Azure 活动日志和 Azure Monitor 跟踪管理操作。 有关详细信息,请参阅 Azure 活动日志。
将专用管理帐户与特权访问工作站配合使用:创建关于专用管理帐户使用的标准操作程序。 部署特权访问工作站(PAW),其中配置了多重身份验证,供网络管理员执行管理任务。 PAW 为管理关键网络基础结构提供强化的安全环境。 使用 Microsoft Defender for Cloud 的标识和访问管理来监视管理帐户的数量。 有关详细信息,请参阅特权访问工作站。
维护管理帐户的清单:使用可显式分配且可查询的 Microsoft Entra ID 内置管理员角色。 定期审核属于管理组成员的帐户,以确保适当的访问控制。
数据保护
虚拟网络的数据保护涉及确保网络基础设施中的数据在传输中的安全,并保证网络通信经过加密,防止被拦截或篡改。
启用传输中的加密:确保所有网络流量都使用加密协议,例如 TLS 1.2 或更高版本、VPN 连接的 IPsec,以及应用程序通信的加密协议。 Azure 默认为 Azure 数据中心之间的流量提供加密。 有关详细信息,请参阅 传输中的加密。
启用 Azure 虚拟网络加密:使用 Azure 虚拟网络加密来加密同一虚拟网络中的虚拟机之间的传输数据。 这为敏感数据提供了额外的安全层。 有关详细信息,请参阅 Azure 虚拟网络加密。
对敏感数据实施网络访问控制:使用 NSG 和 Azure 防火墙限制对包含敏感数据的子网和资源的访问。 通过多层网络安全控制实现纵深防御原则。
为 Azure ExpressRoute 启用 MACsec:对于 ExpressRoute 连接,请启用 MACsec(媒体访问控制安全性),以便在本地网络和 Azure 之间提供第 2 层加密,确保传输中的数据的机密性和完整性。 有关详细信息,请参阅 适用于 ExpressRoute 的 MACsec。
根据敏感度对数据进行分类:将机密级别分配给流经虚拟网络的数据,并根据这些分类实施适当的网络安全控制。 使用此分类影响网络设计和安全优先级。
日志记录和威胁检测
针对虚拟网络进行全面的日志记录和威胁检测可实现安全监视、事件响应和合规性报告。 适当的日志记录有助于识别安全威胁,并为事件调查提供取证功能。
使用 Azure Monitor 集中收集日志:配置诊断设置,以将虚拟网络日志、NSG 流日志和 Azure 防火墙日志发送到 Azure Monitor Log Analytics 工作区,以便集中分析和关联。 根据组织的合规性法规设置适当的日志保留期,并使用 Azure 存储帐户长期存档安全日志。 有关详细信息,请参阅 Azure Monitor。
启用 Microsoft Defender for Cloud:使用 Microsoft Defender for Cloud 监视虚拟网络资源的安全配置错误和威胁。 启用增强的安全功能以实现全面的保护。 有关详细信息,请参阅 Microsoft Defender for Cloud。
配置安全警报和通知:为关键网络安全事件(例如 NSG 规则更改、异常流量模式或防火墙块)设置 Azure Monitor 警报。 配置动作组,以自动通知安全团队。 有关详细信息,请参阅 Azure Monitor 警报。
使用 Microsoft Sentinel 进行高级威胁检测:将虚拟网络日志连接到 Microsoft Sentinel,以获取高级安全分析、威胁搜寻和自动响应功能。 有关详细信息,请参阅 Microsoft Sentinel。
为网络资源启用全面的日志记录:为虚拟网络、负载均衡器和其他网络组件启用诊断日志记录,以捕获配置更改和访问模式。 为 Azure DNS 或自定义 DNS 服务器配置 DNS 查询日志记录,以检测基于 DNS 的攻击和数据外泄尝试。 监视可疑的域查询和 DNS 隧道活动。
使用 UEBA 监视和分析日志:定期查看异常行为和安全事件的日志。 使用 Azure Monitor 的 Log Analytics 工作区对安全数据进行查询和执行分析。 实现用户和实体行为分析(UEBA)工具,以从监视数据中收集用户行为,并对其进行分析,以检测可能指示安全威胁的异常用户访问模式。
资产管理
虚拟网络的资产管理涉及维护网络资源的清单、实施治理策略并确保符合安全标准。 有效的资产管理有助于维护安全态势,并可以快速响应安全事件。
使用 Azure Policy 进行治理和资源限制:部署 Azure Policy 定义以强制实施虚拟网络的安全标准。 这些策略可能需要子网上的 NSG、强制实施特定的安全规则或阻止创建公共 IP。 使用内置策略定义(如“不允许的资源类型”和“允许的资源类型”)来限制资源创建。 有关详细信息,请参阅 适用于虚拟网络的 Azure Policy。
为组织标记网络资源:对虚拟网络、子网、NSG 和相关资源应用一致的标记策略,以实现适当的组织、成本管理和安全策略强制实施。 使用 NSG 规则中的标记和说明字段来指定安全规则的业务需要、持续时间和其他信息,以帮助进行安全审核和规则管理。 有关详细信息,请参阅 资源标记。
监视资源配置更改:使用 Azure Resource Graph 跨订阅查询和发现所有网络资源。 为对关键网络配置进行未经授权的更改设置警报。 有关详细信息,请参阅 Azure Resource Graph。
实现标准化配置管理:使用 Azure 资源管理器模板或 Bicep 来一致地定义和部署网络配置。 使用 Azure 蓝图通过在单个蓝图定义中打包关键环境项目(例如 Azure 资源管理器模板、基于角色的访问控制分配和策略)来简化大规模 Azure 部署。 将模板存储在版本控制中,并实现网络修改的变更管理过程。 有关详细信息,请参阅 Azure 蓝图。
维护已批准的资源清单:为网络环境创建和维护已批准的 Azure 资源和已批准的配置清单。 定期审核部署,以确保符合已批准的基线。
安全测试
虚拟网络的安全测试可确保实现的安全控制正常运行,并且可以检测和防止潜在威胁。 定期测试可验证网络安全状况的有效性。
定期进行渗透测试:由工作负载团队以外的专家定期执行渗透测试,这些专家会尝试从道德角度攻击网络基础设施。 这些测试通过模拟真实攻击来验证安全防御。
实现漏洞扫描:运行例程和集成的漏洞扫描,以检测网络基础结构、虚拟机和网络设备中的漏洞。 将扫描程序集成到部署管道中,以自动检测漏洞。
测试事件响应过程:定期执行练习来测试网络安全事件响应功能。 确定网络安全响应过程中的薄弱点和差距,并根据需要修改计划。
验证网络分段:定期测试网络分段控制,以确保一个段中的受损资源无法访问其他段中的资源。 验证隔离边界是否按设计运行。
测试备份和恢复过程:定期测试从导出的模板或文档重新创建虚拟网络配置的能力,以确保恢复过程正常工作并满足恢复时间目标。
启用虚拟网络验证程序:在预生产环境中使用 Azure 虚拟网络管理器中的虚拟网络验证程序测试资源之间的连接,并确保这些资源可访问且不受策略阻止。 有关详细信息,请参阅 虚拟网络验证程序。
使用 Azure Chaos Studio 进行复原测试:实现 Azure Chaos Studio 以模拟网络连接中断,并验证安全控制在故障方案中是否保持有效。 这可确保即使网络遇到压力或部分中断,安全机制也能继续正常运行。 有关详细信息,请参阅 Azure Chaos Studio。
备份和恢复
虚拟网络的备份和恢复侧重于保留网络配置,并确保在发生意外删除或配置错误时快速恢复网络连接。 虽然虚拟网络本身不需要传统备份,但配置保留至关重要。
导出和保护网络配置:使用 Azure 资源管理器将虚拟网络配置导出为可以存储和用于灾难恢复的模板。 使用 Azure 自动化或 Azure Pipelines 自动执行此过程。 使用 Azure DevOps 安全地存储和管理代码,例如自定义 Azure Policy 定义和 Azure 资源管理器模板。 在 Key Vault 中启用 Soft-Delete 和清除保护,防止密钥意外或恶意删除。 有关详细信息,请参阅 导出模板。
文档网络体系结构:维护网络设计的综合文档,包括 IP 地址方案、路由表、安全组规则和连接要求。 将此文档存储在安全、可访问的位置。
测试和验证恢复过程:定期测试从导出的模板或文档重新创建虚拟网络配置的能力,以确保恢复过程正常工作并满足恢复时间目标。 定期将 Azure 资源管理器模板部署到独立订阅,并测试客户管理密钥备份的还原,以确保恢复过程正常进行。
备份连接的资源和客户管理的密钥:虽然虚拟网络不需要备份,但请确保使用 Azure 备份正确备份连接到网络的虚拟机和其他资源,以保持完整的恢复功能。 如果在虚拟网络环境中使用客户管理的密钥进行加密,请确保这些密钥在 Azure Key Vault 中备份,并执行适当的保留和恢复过程。 有关详细信息,请参阅 Azure 备份。
准备冗余网络基础结构:提前复制网络基础结构,尤其是混合设置。 确保不同区域中的单独路由已准备好事先相互通信。 跨主站点和灾难恢复站点复制和维护一致的 NSG 和 Azure 防火墙规则。 避免生产与灾难恢复网络之间的 IP 地址范围重叠,以简化网络管理和加速故障转移事件期间的转换。
事件响应
虚拟网络的事件响应涉及建立检测、响应和从影响网络基础结构的安全事件中恢复的过程。 适当的事件响应功能有助于最大程度地减少安全漏洞的影响,并确保快速恢复服务。
创建事件响应指南:为组织构建事件响应指南,该指南定义从检测到事件后评审的所有人员角色和事件处理阶段。 包括网络安全事件的具体程序。
实现事件评分和优先级:建立基于严重性和影响确定安全事件的优先级的过程。 使用 Microsoft Defender for Cloud 警报来帮助确定应首先调查哪些网络安全事件的优先级。
配置安全事件联系人详细信息:如果Microsoft安全响应中心发现你的数据已被非法或未经授权的方访问,则设置Microsoft将使用的安全事件联系人信息与你联系。 有关详细信息,请参阅 Microsoft Defender for Cloud Security Contact。
将安全警报纳入事件响应:使用持续导出功能导出 Microsoft Defender for Cloud 警报和建议,以帮助识别 Azure 资源的风险。 使用数据连接器将警报传输到 Microsoft Sentinel,以便集中管理事件。
测试安全响应过程:定期执行练习以测试系统的事件响应功能。 确定网络安全响应过程中的薄弱点和差距,并根据需要修改计划。
自动执行事件响应:使用 Microsoft Defender for Cloud 中的工作流自动化功能通过逻辑应用在安全警报和建议上自动触发响应,以保护 Azure 网络资源。