你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure Virtual Network Manager 中的虚拟网络安全管理规则强制实施

在本文中,你将了解安全管理规则如何通过网络安全组等工具提供灵活且可缩放的安全策略强制实施。 首先,你将了解虚拟网络强制实施的不同模型。 然后,你将了解使用安全管理规则强制实施安全性的一般步骤。

重要

Azure Virtual Network Manager 现已正式发布,可用于中心辐射型连接配置以及具有安全管理员规则的安全配置。 网格连接性配置仍为预览版。

此预览版在提供时没有附带服务级别协议,我们不建议将其用于生产工作负荷。 某些功能可能不受支持或者受限。 有关详细信息,请参阅 Microsoft Azure 预览版补充使用条款

虚拟网络强制措施

如果仅使用网络安全组 (NSG),在多个应用程序、团队甚至整个组织中广泛强制实施虚拟网络可能会很棘手。 通常,在试图在整个组织范围内集中强制实施与将精细、灵活的控制移交给团队之间存在一种平衡。

安全管理规则旨在通过合并每种模式的优点,同时减少每种模式的缺点,来完全消除强制实施和灵活控制之间的这种浮动。 中心治理团队通过安全管理规则建立防护栏,同时仍然为单个团队通过 NSG 规则按需灵活地确定安全性留出余地。 安全管理规则并不意味着替代 NSG 规则。 相反,它们与 NSG 规则协同作用,在整个组织中提供强制和灵活性。

强制模式

让我们看看一些没有安全管理规则的常见安全管理模型及其优缺点:

模型 1 - 中心治理团队管理 NSG

在此模型中,全部 NSG 由组织中的中心治理团队管理。

优点 缺点
中心治理团队可以强制执行重要的安全规则。 由于管理员需要管理每个 NSG,因此运营开销很高,随着 NSG 数量的增加,负担也会增加。

模型 2 - 各个团队各自管理 NSG

在此模型中,组织内的各个团队负责管理各自的 NSG,同时没有集中式治理团队。

优点 缺点
单个团队可以灵活控制根据其服务需求调整安全规则。 中心治理团队无法强制执行关键安全规则,例如阻止风险端口。

个别团队也可能错误配置或忘记附加 NSG,从而导致漏洞暴露。

模型 3 - NSG 通过 Azure Policy 创建并由单个团队管理。

在此模型中,单个团队仍负责管理其 NSG。 不同之处在于 NSG 是使用 Azure Policy 创建的,用于设置标准规则。 修改这些规则将触发审核通知。

优点 缺点
单个团队可以灵活地控制安全规则的调整。

中心治理团队可以创建标准安全规则,并在这些规则被修改时收到通知。
中心治理团队仍然无法强制执行标准安全规则,因为团队中的 NSG 所有者仍然可以修改它们。

通知也很难管理。

为流量强制执行安全管理规则和例外情况

让我们将到目前为止讨论的概念应用于示例场景。 公司网络管理员希望强制实施一个安全规则,以阻止整个公司的入站 SSH 流量。 如果没有安全管理规则,则很难强制实施这种类型的安全规则。 如果管理员管理所有 NSG,则管理开销会很高,并且管理员无法快速响应产品团队修改 NSG 规则的需求。 另一方面,如果产品团队在没有安全管理规则的情况下管理自己的 NSG,那么管理员就无法强制实施关键的安全规则,从而留下潜在的安全风险。 同时使用安全管理规则和 NSG 可以解决这个难题。

在这种情况下,管理员可以创建安全管理规则来阻止公司中所有虚拟网络的入站 SSH 流量。 管理员还可以创建安全管理规则,以允许特定虚拟网络的入站 SSH 流量,在这种情况下,需为这些虚拟网络设置例外情况。 系统会在整个公司内强制执行安全管理规则,管理员仍然可以允许特定虚拟网络的例外情况。 这是通过对每个规则使用优先级顺序来完成的。

该图展示了管理员如何实现以下目标:

  • 在整个组织中强制实施安全管理规则。
  • 允许应用程序团队处理 SSH 流量的例外情况。

使用网络安全组强制实施安全管理规则的示意图。

步骤 1:创建网络管理器实例

公司管理员可以创建一个网络管理器,公司的根管理组作为该网络管理器实例的范围。

步骤 2:为虚拟网络创建网络组

管理员创建两个网络组 - 由组织中的所有虚拟网络组成的“所有”网络组,以及由需要例外的应用程序的虚拟网络组成的“应用”网络组。 上图中的“所有”网络组由 VNet 1 到 VNet 5 组成,而“应用”网络组具有 VNet 4 和 VNet 5。 用户可以使用动态成员身份轻松定义这两个网络组。

步骤 3:创建安全管理配置

在此步骤中,使用以下安全管理配置定义了两个安全管理规则:

  • 用于阻止优先级较低 (100) 的“所有”网络组的入站 SSH 流量的安全管理规则。
  • 用于允许优先级较高 (10) 的“应用”网络组的入站 SSH 流量的安全管理规则。

步骤 4:部署安全管理配置

部署安全管理员配置后,公司中的所有虚拟网络都会具有由安全管理规则强制实施的拒绝入站 SSH 流量规则。 任何团队都无法修改拒绝规则,规定的公司管理员除外。 应用虚拟网络会同时具有允许入站 SSH 流量规则和拒绝入站 SSH 流量规则(继承自“所有”网络组规则)。 如果应用网络组的允许入站 SSH 流量规则的优先级较低,则首先评估该规则。 当入站 SSH 流量传入应用 VNet 时,优先级较高的安全管理规则将允许该流量。 假设应用虚拟网络的子网上存在 NSG,系统将根据应用程序团队设置的 NSG 评估此入站 SSH 流量。 此处所述的安全管理规则方法允许公司管理员有效实施公司策略,并在使用 NSG 的组织中创建灵活的安全防护栏。

后续步骤