IBM Cloud Docs
Network Security Groups

Network Security Groups


IBM Power Virtual Server 在 IBM 数据中心


网络安全组(NSG)用于定义安全规则,允许或拒绝与 IBM® Power® Virtual Server 工作区中配置的资源相关的特定网络流量。 您可以在Power Virtual Server环境中创建NSG,以检查和过滤 Power Virtual Server 工作区中资源之间的网络流量。

只有在部署工作区的数据中心启用新计量代码后,现有工作区才能提供 NSG 支持。 计量代码必须基于云资源名称 (CRN)。 有关推出时间表的更多信息,请参阅 版本说明

NSG的安全规则定义了哪些入站或入口网络流量允许或拒绝到达成员。 成员是指子网和虚拟机(VM)级别的一个或多个网络接口(NIC)。 所有出站或出口流量均自动放行。

在您的 Power Virtual Server 环境中使用NSG有以下好处:

  • 增强安全性和流量控制,限制对虚拟机和网络资源的未经授权的访问
  • 支持根据源、目标、端口和协议(TCP、UDP、ICMP和任意协议)创建特定的安全规则
  • 使用NSG不会产生额外费用;包含在 Power Virtual Server 工作区中
  • 不会对任何NSG成员的整体网络吞吐量或网络延迟产生负面影响

NSG组件

请查看以下主题,了解NSG实施中涉及的组件:

网络地址组

网络地址组(NAG)是一个或多个外部网络地址范围的集合,例如无类别域间路由(CIDR),这些地址范围与您的 Power Virtual Server 工作区中已配置的网络资源没有直接关系。 NAG 用于对外部网络地址范围进行分类,例如可通过 Transit Gateway 或 PER 本地访问的地址范围,例如 IBM Cloud Private 端点

NSG规则中,NAG用作参考点,通过将多个外部IP地址、子网或虚拟网段归入一个实体(NAG),简化NSG的实施。 您无需在NSG安全规则中列出多个IP地址或子网,而是可以参考NAG,将同一规则应用于该组中的所有地址。

使用NAG有以下好处:

  • 简化外部网络地址NSG规则的管理
  • 在多个地址应用安全策略时,降低复杂性
  • 可扩展性得到提升,因为无需修改NSG规则即可向NAG添加新的IP地址、子网或虚拟网段

成员

成员是指在您的 Power Virtual Server 工作区中配置的一个或多个网络接口。 网络接口可以通过以太网MAC地址或 IPv4 地址来识别。 同一个网络接口不能同时作为两个不同NSG的成员,一个使用MAC地址,另一个使用 IPv4 地址。 这样做可能会导致意想不到的行为。

NSGs是成员和安全规则的集合。 更多信息,请参阅 规则

NSG成员只能与一个NSG相关联。 已配置的网络资源不能同时属于多个NSG。

规则

规则或安全规则定义了允许或拒绝到达NSG成员的入站网络流量。 默认情况下,所有入站网络流量都会被拒绝,除非明确定义安全规则,否则不会到达NSG的任何成员。 要了解有关定义允许入站流量的规则的更多信息,请参阅 在NSG上创建新规则

所有出站流量自动允许。

NSG中的网络流量规则和优先级

请查看以下主题,了解在 Power Virtual Server 工作区中实施NSG时,网络流量和安全规则的处理和优先级排序方式:

规则评估顺序

规则识别允许或拒绝入站网络流量的顺序取决于以下关键因素:

  • 否定规则总是优先评估,并具有最高优先级。 如果拒绝规则与流量匹配,流量将立即被阻止,评估停止,无论是否存在允许规则。

  • 系统处理只有在完成处理拒绝规则后才能允许规则。 如果没有匹配到拒绝规则,系统将评估允许规则。

  • 如果多个允许规则重叠,则遵循并应用列表中第一个匹配的规则。 规则的重叠不会导致冲突。 例如

    • 规则A:允许TCP All

    • 规则B:允许TCP Port 22

      结果:根据先匹配的规则,可以应用任一规则。

  • 默认情况下,任何不符合允许规则的流量都会遵循隐含的拒绝规则而被拒绝。

NAG在交通匹配中的优先级

请查看以下信息,了解入站网络流量如何与NAG匹配:

  • 入站网络流量与任何自定义NAG中最具体的CIDR相匹配。 当评估NAG的允许或拒绝规则时,源IP地址与自定义NAG中最具体的CIDR进行匹配,而不是默认NAG(0.0.0.0/0 )。

  • 如果源IP属于更具体的NAG,则必须具有明确的NSG规则,允许来自该NAG的网络流量。

  • 如果自定义NAG中存在更具体的CIDR,则使用默认NAG(0.0.0.0/0 )将无法允许入站流量。

例如,考虑一个远程系统和一个具有以下配置的定制NAG:

  • 远程系统,IP地址为 10.55.55.2
  • 现有定制NAG,CIDR 10.55.55.0/24

为了允许来自 10.55.55.2 的流量,NSG规则必须明确允许来自自定义NAG(10.55.55.0/24 )的流量。此流量与默认NAG(0.0.0.0/0 )不匹配。

有关使用NAG的更多信息,请参阅 在工作区中创建和管理NAG

在工作区设置网络安全组

当您在 Power Virtual Server 环境中配置工作区时,系统会自动创建默认的NSG和NAG,以便该工作区中的现有网络接口之间进行双向通信。

请查看以下主题,了解NSG的设置、配置和管理等各个方面:

在工作区启用或禁用NSG

您可以在PER和增强型CRN启用的工作区中启用或禁用NSG功能。 但是,不能在以前、手动、VPN 或云连接工作区中启用 NSG。

要确定您的 Power Virtual Server 工作区是否具备支持NSG的先决条件,请运行以下 IBM Cloud CLI命令:

ibmcloud resource service-instance <WORKSPACE_CRN> -o json

验证 resourceCRNs 属性是否存在,其值是否设置为 true

"extensions": {
            "resourceCRNs": true
        },

要在现有工作区启用或禁用NSG功能,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。
  2. 单击左侧导航菜单中的工作区
  3. 选择要启用或禁用NSG功能的工作区。 此时将显示“工作区”详细信息窗格。
  4. 将网络安全组功能设置为启用禁用

当在工作区启用NSG功能时,系统会自动创建一个默认NSG,其中包含工作区中任何现有NIC附件的成员,并附带两条规则。 第一条规则允许“默认”NSG中的其他成员进行双向交流(Protocol=ALL )。 第二条规则允许与“默认”NAG(工作区外的 0.0.0.0/0 网络CIDR)进行双向通信(Protocol=ALL )。

默认规则可以被删除,以实现同一NSG中成员之间的完全隔离,以及与外部地址的隔离。 当默认规则被删除时,所有入站流量默认被拒绝。 要删除这些规则,请完成 从现有NSG部分删除规则 部分列出的步骤。

在工作区创建和管理非结构化搜索

您可以在工作区中创建一个NSG,使用默认配置,不定义任何规则或添加成员,也可以在创建NSG时定义入站规则并添加成员。

使用默认配置创建NSG

当您在您的工作区创建NSG时,您无需强制定义安全规则或向NSG添加成员。 然而,在创建了默认设置的NSG后,您可以稍后添加规则和成员。

默认情况下,所有入站网络流量都会被拒绝,无法到达网络安全组的任何成员。 要创建默认配置的NSG,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择您要创建NSG的工作区。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。 网络安全组页面显示网络安全组选项卡上现有网络安全组的列表。

  5. 单击创建网络安全组。 此时将显示“创建网络安全组”面板。

  6. 在详细信息部分,输入网络安全组的名称,然后点击继续。 要定义入站安全规则并在以后将成员添加到NSG,请点击继续 > 完成 > 创建

创建一个具有入站规则和成员的NSG

要允许或拒绝入站流量,必须明确定义入站规则。 要创建并定义一个带有入站规则和成员的NSG,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择您要创建NSG的工作区。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。 网络安全组页面显示网络安全组选项卡上现有网络安全组的列表。

  5. 单击创建网络安全组。 此时将显示“创建网络安全组”面板。

  6. 在“详细信息”部分,输入网络安全组的名称,然后点击“继续”。

  7. 在“入站规则(可选)”部分,点击“创建规则”。 此时将显示“创建规则”面板。

  8. 选择以下任一操作:

    • 允许:使用此选项允许来自指定远程的网络流量。
    • 拒绝:使用此选项可创建流量例外,覆盖允许规则。
  9. 根据您要控制的流量类型,选择以下协议之一:

    • 传输控制协议(TCP ):适用于可靠的、面向连接的流量,例如网络( HTTP / HTTPS )、SSH、RDP、FTP和数据库。 该协议可确保所有发送的数据包都能按正确的顺序到达目的地。

    • 用户数据报协议(UDP ):实时通信、快速和无连接流量的理想选择,例如域名系统(DNS)、VoIP, 网络监控、视频流和游戏。 本协议不保证交付、订单或纠错。

    • 互联网控制消息协议(ICMP ):适用于 pingtraceroute 等网络诊断。 与TCP或UDP不同,ICMP不支持应用程序之间的数据传输。

    • 任意:适用于创建适用于特定端口或一组端口上任何协议的规则。 但是,此选项无法控制基于协议的具体安全措施。

  10. 根据您在上一步中从列表中选择的协议,完成以下步骤:

  • TCP

    1. 远程:选择网络安全组或网络地址组,允许或拒绝规则的流量。 如果您需要的网络地址组不可用,请点击创建网络地址组进行创建。

    2. 源端口范围:指定入站流量的源端口范围。 有效范围是 1–65535

    3. 目的端口范围:指定接收入站流量的端口范围。 有效范围是 1–65535

    4. 允许/拒绝标志:您可以使用高级选项从列表中选择一个或多个TCP标志。 支持的国旗有:

      • ack
      • fin
      • rst
      • syn
  • UDP

    1. 远程:选择网络安全组或网络地址组,允许或拒绝规则的流量。 如果没有找到所需的网域组,请点击 “创建网域组” 创建一个。

    2. 源端口范围:指定入站流量来源的端口范围。 有效范围是 1–65535

    3. 目的端口范围:指定接收入站流量的端口范围。 有效范围是 1–65535

  • ICMP

    1. 远程:选择网络安全组或网络地址组,允许或拒绝规则的流量。 如果您需要的网络地址组不可用,请点击创建网络地址组进行创建。

    2. ICMP 消息类型:从列表中选择所需的消息类型。 支持的类型包括:

      • all
      • echo
      • echo-reply
      • source-quench
      • time-exceeded
      • destination-unreach
  • 任意

    1. 远程:选择网络安全组或网络地址组,允许或拒绝规则的流量。 如果您需要的网络地址组不可用,请点击创建网络地址组进行创建。
  1. 单击创建规则

  2. 点击 “继续” 为NSG添加成员。

  3. 在“会员(可选)”部分,点击“添加会员”。 列出属于工作区的现有虚拟服务器实例。 如果您没有看到列出的任何虚拟服务器,您可以按照 创建 IBM 电源虚拟服务器中 提供的步骤创建一个。

将成员添加到网络安全组中,您可以控制这些成员的入站网络流量。 一个成员一次只能加入一个网络安全组。

  1. 选择虚拟服务器实例,然后单击下一步。 显示属于虚拟服务器实例的网络接口列表。

  2. 从列表中选择一个或多个网络接口,然后点击“添加成员”。

  3. 单击完成

  4. 单击创建。 您创建的NSG会列在 “网络安全组”选项卡上。

创建NSG后,您可以通过执行以下操作来管理它们:

重新命名NSG

要重命名 NSG,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择包含要重命名的NSG的工作区。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。 网络安全组页面显示网络安全组选项卡上现有网络安全组的列表。

  5. 点击NSG条目上方的下拉菜单(三个垂直点图标),选择“编辑”,即可对条目进行重命名。 此时将显示“编辑”网络安全组详细信息面板。

  6. 输入 NSG 的新名称,然后单击保存

删除NSG

您只能删除自己创建的 NSG,而不能删除在 Power Virtual Server 工作区启用 NSG 功能时创建的默认 NSG。

要删除 NSG,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择包含要删除的NSG的工作区。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。 网络安全组页面显示网络安全组选项卡上现有网络安全组的列表。

  5. 点击NSG条目上方的下拉菜单(三个垂直点图标),选择删除。 此时将出现“删除网络安全组”确认消息框。

  6. 点击 “删除”按钮,开始删除请求。 无法撤销此操作。

当您删除一个 Power Virtual Server 工作区时,该工作区中的所有NSG也会被删除。

在使用 CLI、API 或 Terraform 界面禁用 NSG 功能之前,必须删除所有 NSG 和 NAG。

在工作区创建和管理NAG

NAGs是入站规则的一部分,用于定义从您的 Power Virtual Server 工作区外部网络地址到NSG成员的入站流量。 由于NAG用于识别 Power Virtual Server 工作区之外的网络流量,因此您可以在工作区中创建NAG,并添加CIDR成员。 您可以在一个工作区中创建最多10个NAG。

要创建 NAG,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择要创建 NAG 的工作区。

  4. 在左侧导航栏的网络连接下点击网络安全组。 此时将显示“网络安全组”面板。

  5. 在导航窗格中,单击 “网络” >“网络安全组”。 显示“网络安全组”页面。

  6. 选择网络地址组选项卡。 显示现有 NAG 列表。

  7. 点击创建网络地址组。 此时将显示“创建网络地址组”窗格。

  8. 输入NAG的名称和用户标签(可选)。 在此步骤中,您可以通过CIDR添加外部IP地址来选择添加成员。 请注意,同一CIDR不能用于多个NAG。 请按照以下指南使用CIDR添加成员:

    • 您必须使用 RFC 1518RFC 1519 文档中定义的 CIDR 表示法。
    • CIDR格式为 <IPv4 address>/<number>。 例如,192.168.1.0/24 代表 192.168.1.0 — 192.168.1.255 的 IP 范围,10.0.0.0/16 代表 10.0.0.0—10.0.255.255 的 IP 范围。
    • 点击 “添加其他” 可添加更多成员。

    创建NAG时,您最多只能添加三名成员。 在NAG创建后,可以添加更多成员。

    除了客户自定义的NAG,为了方便起见,还提供了一个默认的NAG,由 0.0.0.0/0 CIDR组成。

    CIDR 161.26.0.0/16 可用于识别 IBM Cloud IaaS 专用端点,例如 DNS、Linux® 软件库和 NTP。
    CIDR 166.8.0.0/14 可用于识别 IBM Cloud PaaS 私有端点,例如 IBM Cloud Databases。

  9. 单击创建组

创建NAG后,您可以通过执行以下操作来管理它们:

重新命名NAG

要重命名 NAG,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择包含要重命名的NAG的工作区。

  4. 在左侧导航栏的网络连接下点击网络安全组

  5. 在导航窗格中,单击 “网络” >“网络安全组”。

  6. 选择网络地址组选项卡。 显示现有 NAG 列表。

  7. 点击NAG条目最右侧的扩展菜单(带有三个垂直点的图标),选择“编辑”,即可对条目进行重命名。 此时将显示编辑网络地址组详细信息面板。

  8. 输入 NAG 的新名称,然后单击保存

删除NAG

要删除 NAG,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择包含要删除的NAG的工作区。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。

  5. 选择网络地址组选项卡。 显示现有 NAG 列表。

  6. 点击您想要删除的NAG条目上的下拉菜单(带有三个垂直点的图标),然后选择删除。 删除网络地址组确认信息框出现。

  7. 点击 “删除”按钮,开始删除请求。 无法撤销此操作。

在NSG中创建和管理入站规则

您可以通过执行以下操作来管理NSG中的入站安全规则:

在NSG上创建规则

可以在两个点上创建NSG规则。 首先,在创建NSG时,其次,在稍后阶段,通过重新访问现有NSG的网络安全组详细信息页面。 要在创建NSG时为其制定规则,请完成 “创建带有入站规则和成员的NSG”部分 中的步骤。

NSG是无国界的,由于所有出站流量都是自动允许的,因此必须为从其他NSG或NAG流入NSG成员的所有回程数据包定义规则。

要在现有NSG上创建规则,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择包含您要创建规则的NSG的工作区。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。 网络安全组页面显示网络安全组选项卡上现有网络安全组的列表。

  5. 选择要创建规则的 NSG。 所选NSG的网络安全组详细信息将显示。

  6. 在“入站规则”部分,单击“创建规则”。 此时将显示“创建规则”面板。

  7. 请按照 “创建包含入站规则和成员的NSG”部分中的步骤操作。

现有NSG的克隆规则

要创建与现有入站规则配置相同的入站规则,您可以克隆现有NSG的规则。 请注意,只有NSG中的规则可以复制,成员不能复制。 当您复制现有规则时,所有属性(如操作(允许或拒绝)、协议、远程、源端口和目标端口范围)都会复制到新规则中。 当一名成员从一个NSG转移到另一个NSG时,克隆过程可确保NSG中的所有规则都得到转移。

您还可以自定义规则的克隆属性,从而高效快速地创建不同的规则。 要克隆现有规则,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择包含NSG的工作区,并选择您要克隆的规则。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。 网络安全组页面显示网络安全组选项卡上现有网络安全组的列表。

  5. 选择包含要克隆的规则的 NSG。 所选NSG的网络安全组详情页面显示。

  6. 在“入站规则”部分,选择包含要克隆规则的选项卡 (TCP 、UDP 、ICMP任意 )。

  7. 点击要复制的规则条目上的下拉菜单(带有三个垂直点的图标),然后选择复制。 此时将显示“创建规则”面板。

  8. 单击创建规则。 新规则以完全相同的配置创建。 您也可以在点击创建规则前进行必要的更改,创建具有不同配置的规则。

从现有NSG中删除规则

要从现有NSG中删除规则,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择包含NSG的工作区,并选择您要删除的规则。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。 网络安全组页面显示网络安全组选项卡上现有网络安全组的列表。

  5. 选择要删除的NSG规则。 所选NSG的网络安全组详情页面显示。

  6. 在“入站规则”部分,选择包含要删除规则的选项卡 (TCP 、UDP 、ICMP任意 )。

  7. 点击要克隆的规则条目上的溢出菜单(带有三个垂直点的图标),然后选择“删除”。 删除网络安全组规则确认信息框出现。

  8. 点击 “删除”按钮,开始删除请求。 无法撤销此操作。

为NSG添加成员并对其进行管理

您可以通过执行以下操作来管理与NSG关联的成员:

将成员添加到网络安全组中

您可以向NSG添加成员,以控制相关网络接口的入站网络流量。

会员可以在两个地方添加。 首先,在创建NSG时,其次,在稍后阶段,通过重新访问现有NSG的网络安全组详细信息页面。 要在创建NSG时添加成员,请完成 “创建带有入站规则和成员的NSG” 部分中提供的步骤。

若要为现有NSG添加成员,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择包含NSG的工作区,添加成员。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。 网络安全组页面显示网络安全组选项卡上现有网络安全组的列表。

  5. 选择要添加成员的 NSG。 所选NSG的网络安全组详情页面显示。

  6. 在会员部分,点击添加会员。 列出属于工作区的现有虚拟服务器实例。 如果虚拟服务器未列出,您可以按照 创建 IBM Power虚拟服务器 中的步骤创建一个虚拟服务器。

一个成员一次只能加入一个网络安全组。

  1. 选择虚拟服务器实例,然后单击下一步。 显示虚拟服务器实例中现有的网络接口。
  2. 从列表中选择一个或多个网络接口,然后点击“添加成员”。
  3. 单击创建

从NSG中删除成员

要删除与NSG关联的成员,请完成以下步骤:

  1. 打开Power Virtual Server用户界面,路径为 IBM Cloud 中打开Power Virtual Server用户界面。

  2. 单击左侧导航菜单中的工作空间

  3. 选择包含您要移除成员的工作区。

  4. 在导航窗格中,单击 “网络” >“网络安全组”。 网络安全组页面显示网络安全组选项卡上现有网络安全组的列表。

  5. 选择您要删除成员的NSG。 所选NSG的网络安全组详情页面显示。

  6. 在会员部分,点击您想从NSG中删除的会员条目旁边的删除图标。 此时将出现“删除网络安全组成员”确认消息框。

  7. 点击 “删除”按钮,开始删除请求。 无法撤销此操作。

删除连接到虚拟机的网络接口或子网时,网卡也会从所有关联的 NSG 中分离。

配额和限制

在 Power Virtual Server 环境中,NSG有以下限制:

  • 您只能在单个工作区中创建10个NSG和10个NAG。 这些配额是在数据中心级别定义的,可以通过 支持票证 在标准限制内增加配额。

增加配额的支持票由客户支持和 Power Virtual Server 运营部门评估,并由 IBM 酌情处理。

  • 网络端口可根据以太网MAC地址或 IPv4 地址进行识别。 一个网络端口不能同时连接到两个使用不同标识符的NSG。 这样做会导致未知的网络流量行为,且不支持这种配置。

  • 一名成员一次只能与一个 NSG 建立联系。

  • 如果网络接口(NIC)分配了公共IP地址,则无法向NSG添加成员。 NSGs只能用于专用网络。

安全注意事项

当在 Power Virtual Server 工作区中禁用NSG功能时,系统允许该工作区中的虚拟机和子网之间进行无限制通信。 在工作区启用NSG功能可以保持这种行为,但也可以通过安全规则控制网络流量,以满足特定需求。