为防火墙政策配置地址组


本教程介绍了如何为网络中的防火墙政策创建和配置地址组。 我们将通过一个示例详细演示如何创建包含子网的 Virtual Private Cloud (VPC) 网络、创建项目级地址组、设置将地址组与防火墙规则搭配使用的防火墙政策,然后测试防火墙规则。如需了解详情,请参阅防火墙政策的地址组

目标

本教程介绍如何完成以下任务:

  • 创建两个带有子网的自定义 VPC 网络。
  • 创建三个虚拟机 (VM) 实例(在一个 VPC 网络的单独子网中有两个使用方虚拟机,在另一个 VPC 网络中有一个提供方虚拟机)。创建的所有虚拟机都没有外部 IP 地址。
  • 在提供方虚拟机上安装 Apache 服务器。
  • 创建 VPC 网络对等互连。
  • 创建 Cloud Router 路由器和 Cloud NAT 网关,以允许提供方虚拟机访问公共互联网。
  • 创建项目级地址组。
  • 使用以下规则创建全球网络防火墙政策:
    • 允许通过 Identity-Aware Proxy (IAP) SSH 连接到虚拟机。
    • 使用项目级地址组允许流量从允许的使用方虚拟机流向提供方虚拟机。
  • 测试连接。

下图显示了两个自定义 VPC 网络中 us-central1 区域中的提供方虚拟机与使用方虚拟机之间的流量。全球网络防火墙政策使用项目级地址组规则来允许 vm-consumer-allowedvm-producer 虚拟机之间的入站流量。系统会拒绝 vm-consumer-blocked 虚拟机和 vm-producer 虚拟机之间的流量,因为每个虚拟机都具有拒绝所有流量的隐式入站流量防火墙规则。

全球网络防火墙政策会允许从一个子网流向另一个 VPC 网络中的目标虚拟机的入站流量。
全球网络防火墙政策会允许从一个子网流向另一个 VPC 网络中的目标虚拟机的入站流量(点击可放大)

准备工作

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. 为您的项目启用 Compute Engine API
  7. 确保您具有 Compute Network Admin 角色 (roles/compute.networkAdmin)。
  8. 为您的项目启用 Identity-Aware Proxy API
  9. 如果您希望通过命令行进行操作,请安装 Google Cloud CLI。 如需了解该工具的概念性信息和安装信息,请参阅 gcloud CLI 概览

    注意:如果您之前未运行过 Google Cloud CLI,请运行 gcloud init 命令来初始化 gcloud CLI 目录。

创建包含子网的使用方 VPC 网络

在本部分中,您将创建一个包含两个 IPv4 子网(subnet-consumer-allowedsubnet-consumer-blocked)的使用方 VPC 网络。

控制台

  1. 在 Google Cloud 控制台中,进入 VPC 网络页面。

    进入 VPC 网络页面

  2. 点击创建 VPC 网络

  3. 对于名称,输入 vpc-consumer

  4. 对于子网创建模式,选择自定义

  5. 新子网部分,为子网指定以下配置参数:

    • 名称subnet-consumer-allowed
    • 区域us-central1
    • IPv4 范围192.168.10.0/29
  6. 点击完成

  7. 点击添加子网并指定以下配置参数:

    • 名称subnet-consumer-blocked
    • 区域us-central1
    • IPv4 范围192.168.20.0/29
  8. 点击完成

  9. 点击创建

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

  2. 如需创建 VPC 网络,请运行以下命令:

    gcloud compute networks create vpc-consumer \
      --subnet-mode=custom
    
  3. 为 Cloud Shell 提供授权对话框中,点击授权

  4. 如需创建子网,请运行以下命令:

    gcloud compute networks subnets create subnet-consumer-allowed \
      --network=vpc-consumer \
      --region=us-central1 \
      --range=192.168.10.0/29
    
  5. 如需创建另一个子网,请运行以下命令:

    gcloud compute networks subnets create subnet-consumer-blocked \
      --network=vpc-consumer \
      --region=us-central1 \
      --range=192.168.20.0/29
    

创建具有子网的提供方 VPC 网络

在本部分中,您将创建一个具有 IPv4 子网的提供方 VPC 网络。

控制台

  1. 在 Google Cloud 控制台中,进入 VPC 网络页面。

    进入 VPC 网络页面

  2. 点击创建 VPC 网络

  3. 对于名称,输入 vpc-producer

  4. 对于子网创建模式,选择自定义

  5. 新子网部分,为子网指定以下配置参数:

    • 名称subnet-vpc-producer
    • 区域us-central1
    • IPv4 范围172.16.10.0/29
  6. 点击完成

  7. 点击创建

gcloud

  1. 如需创建 VPC 网络,请运行以下命令:

    gcloud compute networks create vpc-producer \
      --subnet-mode=custom
    
  2. 如需创建子网,请运行以下命令:

    gcloud compute networks subnets create subnet-vpc-producer \
      --network=vpc-producer \
      --region=us-central1 \
      --range=172.16.10.0/29
    

创建 Cloud Router 路由器和 Cloud NAT 网关

如需允许 vm-producer 虚拟机访问公共互联网,您需要创建 Cloud Router 路由器和 Cloud NAT 网关。

控制台

  1. 在 Google Cloud 控制台中,转到 Cloud NAT 页面。

    转到 Cloud NAT

  2. 点击开始使用创建 Cloud NAT 网关

  3. 对于网关名称,输入 nat-gateway-addressgrp

  4. NAT 类型列表中,选择公共

  5. 选择 Cloud Router 路由器部分中,指定以下配置参数:

    • 网络vpc-producer
    • 区域us-central1 (lowa)
    • Cloud Router:点击创建新路由器
      1. 对于名称,输入 router-addressgrp
      2. 点击创建
  6. 点击创建

gcloud

  1. 要创建 Cloud Router 路由器,请运行以下命令:

    gcloud compute routers create router-addressgrp \
      --network=vpc-producer \
      --region=us-central1
    
  2. 如需创建 Cloud NAT 网关,请运行以下命令:

    gcloud compute routers nats create nat-gateway-addressgrp \
      --router=router-addressgrp \
      --region=us-central1 \
      --auto-allocate-nat-external-ips \
      --nat-all-subnet-ip-ranges
    

创建虚拟机

在上一部分中创建的 VPC 网络的每个子网中,创建没有外部 IP 地址的虚拟机。

为使用方允许的 VPC 网络创建虚拟机

subnet-consumer-allowed 子网中创建一个虚拟机。

控制台

  1. 在 Google Cloud 控制台中,转到创建实例页面。

    转到“创建实例”

  2. 对于名称,输入 vm-consumer-allowed

  3. 对于区域,请选择 us-central1 (Iowa)

  4. 展开高级选项,然后展开网络

  5. 网络接口部分中,展开默认并指定以下配置参数:

    • 网络vpc-consumer
    • 子网subnet-consumer-allowed IPv4 (192.168.10.0/29)
    • 外部 IPv4 地址
  6. 点击完成

  7. 点击创建

gcloud

gcloud compute instances create vm-consumer-allowed \
     --network=vpc-consumer \
     --zone=us-central1-a \
     --stack-type=IPV4_ONLY \
     --no-address \
     --subnet=subnet-consumer-allowed

为使用方阻止的 VPC 网络创建虚拟机

在本部分中,您将在 subnet-consumer-blocked 子网中创建一个虚拟机。

控制台

  1. 在 Google Cloud 控制台中,转到创建实例页面。

    转到“创建实例”

  2. 对于名称,输入 vm-consumer-blocked

  3. 对于区域,请选择 us-central1 (Iowa)

  4. 展开高级选项,然后展开网络

  5. 网络接口部分中,展开默认并指定以下配置参数:

    • 网络vpc-consumer
    • 子网subnet-consumer-blocked IPv4 (192.168.20.0/29)
    • 外部 IPv4 地址
  6. 点击完成

  7. 点击创建

gcloud

gcloud compute instances create vm-consumer-blocked \
    --network=vpc-consumer \
    --zone=us-central1-a \
    --stack-type=IPV4_ONLY \
    --no-address \
    --subnet=subnet-consumer-blocked

为提供方 VPC 网络创建虚拟机

在子网 subnet-vpc-producer 中创建一个虚拟机,并在其上安装 Apache 服务器。

控制台

  1. 在 Google Cloud 控制台中,转到创建实例页面。

    转到“创建实例”

  2. 对于名称,输入 vm-producer

  3. 对于区域,请选择 us-central1 (Iowa)

  4. 展开高级选项,然后展开网络

  5. 网络接口部分中,展开默认并指定以下配置参数:

    • 网络vpc-producer
    • 子网subnet-vpc-producer IPv4 (172.16.10.0/29)
  6. 点击完成

  7. 展开管理部分。

  8. 自动化部分的启动脚本字段中输入以下脚本:

      #! /bin/bash
      apt-get update
      apt-get install apache2 -y
      a2ensite default-ssl
      a2enmod ssl
      # Read VM network configuration:
      md_vm="http://169.254.169.254/computeMetadata/v1/instance/"
      vm_hostname="$(curl $md_vm/name -H "Metadata-Flavor:Google" )"
      filter="{print \$NF}"
      vm_network="$(curl $md_vm/network-interfaces/0/network \
      -H "Metadata-Flavor:Google" | awk -F/ "${filter}")"
      vm_zone="$(curl $md_vm/zone \
      -H "Metadata-Flavor:Google" | awk -F/ "${filter}")"
      # Apache configuration:
      echo "Page on $vm_hostname in network $vm_network zone $vm_zone" | \
      tee /var/www/html/index.html
      systemctl restart apache2
    

    上述脚本会在此虚拟机中部署和启动 Apache Web 服务器。

  9. 点击创建

gcloud

如需创建提供方虚拟机,请运行以下命令:

  gcloud compute instances create vm-producer \
      --network=vpc-producer \
      --zone=us-central1-a \
      --stack-type=IPV4_ONLY \
      --no-address \
      --subnet=subnet-vpc-producer \
      --image-project=debian-cloud \
      --image-family=debian-10 \
      --metadata=startup-script='#! /bin/bash
        apt-get update
        apt-get install apache2 -y
        a2ensite default-ssl
        a2enmod ssl
        # Read VM network configuration:
        md_vm="http://169.254.169.254/computeMetadata/v1/instance/"
        vm_hostname="$(curl $md_vm/name -H "Metadata-Flavor:Google" )"
        filter="{print \$NF}"
        vm_network="$(curl $md_vm/network-interfaces/0/network \
        -H "Metadata-Flavor:Google" | awk -F/ "${filter}")"
        vm_zone="$(curl $md_vm/zone \
        -H "Metadata-Flavor:Google" | awk -F/ "${filter}")"
        # Apache configuration:
        echo "Page on $vm_hostname in network $vm_network zone $vm_zone" | \
        tee /var/www/html/index.html
        systemctl restart apache2'

创建 VPC 网络对等互连连接

如需以私密方式连接同一项目中的 vpc-consumervpc-producer VPC 网络,请使用 VPC 网络对等互连。无论 VPC 网络是否属于同一个项目或组织,VPC 网络对等互连都支持跨两个 VPC 网络的内部 IP 地址连接。

vpc-consumervpc-producer 对等互连

如需成功建立 VPC 网络对等互连,您必须为 vpc-consumervpc-producer 网络单独配置对等互连关联。

控制台

如需在 vpc-consumervpc-producer 网络之间创建 VPC 网络对等互连,请按以下步骤操作:

  1. 在 Google Cloud 控制台中,转到 VPC 网络对等互连页面。

    打开“VPC 网络对等互连”

  2. 点击创建连接

  3. 点击继续

  4. 名称字段中,输入 peering-cp

  5. 您的 VPC 网络下,选择 vpc-consumer

  6. VPC 网络名称下,选择 vpc-producer

  7. 点击创建

gcloud

如需在 vpc-consumervpc-producer 之间创建 VPC 网络对等互连,请运行以下命令:

gcloud compute networks peerings create peering-cp \
    --network=vpc-consumer \
    --peer-network=vpc-producer \
    --stack-type=IPV4_ONLY

vpc-producer 网络与 vpc-consumer 网络对等互连

控制台

如需在 vpc-producervpc-consumer 之间创建 VPC 网络对等互连,请按以下步骤操作:

  1. 在 Google Cloud 控制台中,转到 VPC 网络对等互连页面。

    打开“VPC 网络对等互连”

  2. 点击创建连接

  3. 点击继续

  4. 名称字段中,输入 peering-pc

  5. 您的 VPC 网络下,选择 vpc-producer

  6. VPC 网络名称下,选择 vpc-consumer

  7. 点击创建

gcloud

如需在 vpc-producervpc-consumer 之间创建 VPC 网络对等互连,请运行以下命令:

gcloud compute networks peerings create peering-pc \
    --network=vpc-producer \
    --peer-network=vpc-consumer \
    --stack-type=IPV4_ONLY

创建全球网络防火墙政策以启用 IAP

如需启用 IAP,请创建全球网络防火墙政策并添加防火墙规则。IAP 允许对虚拟机实例的管理员权限。

该防火墙规则具有以下特征。

  • 来自 IP 范围 35.235.240.0/20 的入站流量。此范围包含 IAP 用于 TCP 转发的所有 IP 地址。
  • 与您希望通过使用 IAP TCP 转发访问的所有端口(例如,用于 SSH 的端口 22)的连接。

控制台

如需允许 IAP 访问 vpc-consumervpc-producer 网络中的所有虚拟机实例,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,转到防火墙页面。

    转到“防火墙政策”

  2. 点击创建防火墙政策

  3. 配置政策部分的政策名称中,输入 fw-policy-addressgrp

  4. 部署范围列表中,选择全局,然后点击继续

  5. 如需为政策创建规则,请在添加规则部分中点击添加规则

    1. 优先级字段中,输入 100
    2. 对于流量方向,选择入站
    3. 对于对匹配项执行的操作,选择允许
    4. 目标部分的目标类型中,选择网络中的所有实例
    5. 来源部分的 IP 范围中,输入 35.235.240.0/20
    6. 协议和端口部分中,选择指定的协议和端口
    7. 选中 TCP 复选框,在端口字段中,输入 22
    8. 点击创建
  6. 点击继续

  7. 如需将 VPC 网络与政策关联,在将政策与 VPC 网络关联部分中,点击关联

  8. 选中 vpc-producervpc-consumer 对应的复选框,然后点击关联

  9. 点击继续

  10. 点击创建

gcloud

如需允许 IAP 访问 vpc-producer 网络中的虚拟机实例,请运行以下命令:

  1. 如需创建防火墙政策,请运行以下命令:

    gcloud compute network-firewall-policies create fw-policy-addressgrp \
        --global
    
  2. 如需创建允许流量流向所有目的地并启用日志的防火墙规则,请运行以下命令:

    gcloud compute network-firewall-policies rules create 100 \
        --firewall-policy=fw-policy-addressgrp \
        --direction=INGRESS \
        --action=ALLOW \
        --layer4-configs=tcp:22 \
        --src-ip-ranges=35.235.240.0/20 \
        --global-firewall-policy
    
  3. 如需将防火墙政策与提供方 VPC 网络关联,请运行以下命令:

    gcloud compute network-firewall-policies associations create \
        --firewall-policy=fw-policy-addressgrp \
        --network=vpc-producer \
        --name=pol-association-vpc-producer \
        --global-firewall-policy
    
  4. 如需将防火墙政策与使用方 VPC 网络关联,请运行以下命令:

    gcloud compute network-firewall-policies associations create \
        --firewall-policy=fw-policy-addressgrp \
        --network=vpc-consumer \
        --name=pol-association-vpc-consumer \
        --global-firewall-policy
    

创建项目级地址组

创建项目级地址组,以使用分配给 vpc-consumer VPC 网络的 subnet-consumer-allowed 子网的 IP 地址。

如需详细了解项目级地址组,请参阅在防火墙政策中使用地址组

控制台

  1. 在 Google Cloud 控制台中,前往地址组页面。

    前往“地址组”

  2. 点击 创建地址组

  3. 名称字段中,输入 address-group-pc

  4. 对于范围,选择全球

  5. 对于类型,选择 IPv4

  6. 容量字段中,输入 1000

  7. IP 地址字段中,输入 192.168.10.0/29

  8. 点击创建

gcloud

  1. 如果您是第一次使用 Cloud Shell 终端,请点击 Google Cloud 控制台中的 alt='' 激活 Cloud Shell

  2. 如需创建地址组,请运行以下命令:

    gcloud network-security address-groups create address-group-pc \
        --type IPv4 \
        --capacity 1000 \
        --location global
    
  3. 为 Cloud Shell 提供授权对话框中,点击授权

  4. 如需向地址组添加内容,请运行以下命令:

    gcloud network-security address-groups add-items address-group-pc \
        --items 192.168.10.0/29 \
        --location global
    

    请记住,IP 范围 192.168.10.0/29 分配给 vpc-consumer VPC 网络的 subnet-consumer-allowed 子网。

添加防火墙规则以允许流量进入地址组

如需允许来自 vm-consumer-allowed 虚拟机的入站流量连接,请创建防火墙规则,将项目级地址组 address-group-pc 添加为来源 IP 地址。

控制台

  1. 在 Google Cloud 控制台中,转到防火墙页面。

    转到“防火墙政策”

  2. 网络防火墙政策部分中,点击 fw-policy-addressgrp

  3. 点击创建规则

  4. 优先级字段中,输入 150

  5. 对于流量方向,选择入站

  6. 对于对匹配项执行的操作,选择允许

  7. 日志列表中,选择开启

  8. 目标部分的目标类型中,选择网络中的所有实例

  9. 来源部分的地址组中,选择 address-group-pc (PROJECT_ID),然后点击确定

    请记住,address-group-pc IP 地址组的 IP 范围为 192.168.10.0/29,该范围分配给使用方 VPC 网络的子网 subnet-consumer-allowed

  10. 点击创建

gcloud

如需更新防火墙政策,请运行以下命令:

gcloud compute network-firewall-policies rules create 150 \
    --firewall-policy=fw-policy-addressgrp \
    --direction=INGRESS \
    --action=ALLOW \
    --src-address-groups=projects/PROJECT_ID/locations/global/addressGroups/address-group-pc \
    --layer4-configs=all \
    --global-firewall-policy \
    --enable-logging

测试连接

测试从 vm-consumer-allowed 虚拟机到 vm-producer 虚拟机以及从 vm-consumer-blocked 虚拟机到 vm-producer 虚拟机的连接。

测试从 vm-consumer-allowed 虚拟机到 vm-producer 虚拟机的流量

控制台

  1. 在 Google Cloud 控制台中,转到虚拟机实例页面。

    转到虚拟机实例

  2. vm-producer 虚拟机的内部 IP 列中,复制虚拟机的内部 IP 地址。

  3. vm-consumer-allowed 虚拟机实例的连接列中,点击 SSH

  4. SSH-in-browser 对话框中,点击授权并等待连接建立。

  5. 如需验证连接,请运行以下命令:

    curl INTERNAL_IP -m 2
    

    INTERNAL_IP 替换为 vm-producer 虚拟机的 IP 地址。

    输出类似于以下内容:

    <!doctype html><html><body><h1>Hello World!</h1></body></html>

  6. 关闭 SSH-in-browser 对话框。

gcloud

  1. 如需查看 vm-producer 虚拟机的内部 IP 地址,请运行以下命令:

    gcloud compute instances describe vm-producer \
       --zone=us-central1-a \
       --format='get(networkInterfaces[0].networkIP)'
    

    出现提示时,按 n 键进行确认,然后按 Enter 键。 请务必记下 vm-producer 虚拟机的内部 IP 地址。

  2. 如需使用 SSH 连接到 vm-consumer-allowed 虚拟机,请运行以下命令:

    gcloud compute ssh vm-consumer-allowed \
       --zone=us-central1-a \
       --tunnel-through-iap
    
  3. 如需验证连接,请运行以下命令:

    curl INTERNAL_IP -m 2
    

    INTERNAL_IP 替换为 vm-producer 虚拟机的内部 IP 地址。

    预期响应消息如下所示:

    <!doctype html><html><body><h1>Hello World!</h1></body></html>

  4. 如需退出 SSH 连接,请输入 exit

测试从 vm-consumer-blocked 虚拟机到 vm-producer 虚拟机的流量

控制台

  1. 在 Google Cloud 控制台中,转到虚拟机实例页面。

    转到虚拟机实例

  2. vm-producer 虚拟机的内部 IP 列中,复制虚拟机的内部 IP 地址。

  3. vm-consumer-blocked 虚拟机实例的连接列中,点击 SSH

  4. SSH-in-browser 对话框中,点击授权并等待连接建立。

  5. 如需验证连接,请运行以下命令:

    curl INTERNAL_IP -m 2
    

    INTERNAL_IP 替换为 vm-producer 虚拟机的 IP 地址。

    Connection timed out 是预期的消息,因为每个虚拟机都会创建一个拒绝所有流量的隐式入站流量防火墙规则。如需允许流量,您可以向防火墙政策添加入站流量规则。

  6. 关闭 SSH-in-browser 对话框。

gcloud

  1. 如需查看 vm-producer 虚拟机的内部 IP 地址,请运行以下命令:

    gcloud compute instances describe vm-producer \
       --zone=us-central1-a \
       --format='get(networkInterfaces[0].networkIP)'
    

    出现提示时,按 n 键进行确认,然后按 Enter 键。 请务必记下 vm-producer 虚拟机的内部 IP 地址。

  2. 如需使用 SSH 连接到 vm-consumer-blocked 虚拟机,请运行以下命令:

    gcloud compute ssh vm-consumer-blocked \
       --zone=us-central1-a \
       --tunnel-through-iap
    
  3. 如需验证连接,请运行以下命令:

    curl INTERNAL_IP -m 2
    

    INTERNAL_IP 替换为 vm-producer 虚拟机的内部 IP 地址。

    Connection timed out 是预期的消息,因为每个虚拟机都会创建一个拒绝所有流量的隐式入站流量防火墙规则。如需允许流量,您可以向防火墙政策添加入站流量规则。

  4. 如需退出 SSH 连接,请输入 exit

查看日志

如需验证地址组防火墙规则是否已应用于入站流量,请访问日志。如需查看日志详细信息,请按以下步骤操作:

  1. 在 Google Cloud 控制台中,转到防火墙页面。

    转到“防火墙政策”

  2. 网络防火墙政策部分中,点击 fw-policy-addressgrp 名称。

  3. 命中数列中,选择您在添加防火墙规则以允许流量进入地址组期间创建的规则对应的数字。Logs Explorer 页面随即会打开。

  4. 如需查看应用于入站流量的防火墙规则,请展开单个日志。您可以查看规则详细信息、处置方式和实例详情。

清理

为避免因本教程中使用的资源导致您的 Google Cloud 账号产生费用,请删除包含这些资源的项目,或者保留项目但删除各个资源。

如需删除在本教程中创建的资源,请完成以下操作:

删除地址组

控制台

  1. 在 Google Cloud 控制台中,转到防火墙页面。

    转到“防火墙政策”

  2. 网络防火墙政策部分中,点击 fw-policy-addressgrp

  3. 防火墙规则部分中,选中防火墙规则 150 的复选框。

  4. 点击 删除

  5. 在 Google Cloud 控制台中,前往地址组页面。

    前往“地址组”

  6. 地址群组部分中,选中 address-group-pc 旁边的复选框。

  7. 点击 删除,然后再次点击删除进行确认。

gcloud

  1. 如需删除与 address-group-pc IP 地址组关联的防火墙规则,请运行以下命令:

    gcloud compute network-firewall-policies rules delete 150 \
        --firewall-policy fw-policy-addressgrp \
        --global-firewall-policy
    
  2. 如需从地址组中移除现有内容,请运行以下命令:

    gcloud network-security address-groups remove-items address-group-pc \
        --items 192.168.10.0/29 \
        --location global
    
  3. 如需删除 IP 地址组,请运行以下命令:

    gcloud network-security address-groups delete address-group-pc \
        --location global
    

    出现提示时,按 Y 键进行确认,然后按 Enter 键。

删除防火墙政策

控制台

  1. 在 Google Cloud 控制台中,转到防火墙页面。

    转到“防火墙政策”

  2. 网络防火墙政策部分中,点击 fw-policy-addressgrp 名称。

  3. 点击关联标签页。

  4. 选中 vpc-producer 虚拟机和 vpc-consumer 虚拟机对应的复选框,然后点击移除关联

  5. 移除防火墙政策关联对话框中,点击移除

  6. 点击 fw-policy-addressgrp 标题旁边的删除

  7. 删除防火墙政策对话框中,点击删除

gcloud

  1. 移除防火墙政策与 VPC 提供方网络之间的关联。

    gcloud compute network-firewall-policies associations delete \
      --name=pol-association-vpc-producer \
      --firewall-policy=fw-policy-addressgrp \
      --global-firewall-policy
    
  2. 移除防火墙政策与 VPC 使用方网络之间的关联。

    gcloud compute network-firewall-policies associations delete \
      --name=pol-association-vpc-consumer \
      --firewall-policy=fw-policy-addressgrp \
      --global-firewall-policy
    
  3. 删除防火墙政策。

    gcloud compute network-firewall-policies delete fw-policy-addressgrp \
        --global
    

删除 VPC 网络对等互连

控制台

  1. 在 Google Cloud 控制台中,转到 VPC 网络对等互连页面。

    打开“VPC 网络对等互连”

  2. 选中 peering-cppeering-pc 对应的复选框。

  3. 点击删除

  4. 删除 2 个对等互连?对话框中,点击删除

gcloud

  1. 如需删除使用方 VPC 与提供方 VPC 之间的对等互连,请运行以下命令:

    gcloud compute networks peerings delete peering-cp \
        --network=vpc-consumer
    
  2. 如需删除提供方 VPC 与使用方 VPC 之间的对等互连,请运行以下命令:

    gcloud compute networks peerings delete peering-pc \
        --network=vpc-producer
    

删除 Cloud NAT 网关和 Cloud Router 路由器

控制台

  1. 在 Google Cloud 控制台中,前往 Cloud Router 路由器页面。

    前往“Cloud Router 路由器”

  2. 选中 router-addressgrp 复选框。

  3. 点击删除

  4. 删除 router-addressgrp 对话框中,点击删除

删除 Cloud Router 路由器时,关联的 Cloud NAT 网关也会被删除。

gcloud

如需删除 router-addressgrp Cloud Router 路由器,请运行以下命令:

gcloud compute routers delete router-addressgrp \
    --region=us-central1

出现提示时,按 Y 键进行确认,然后按 Enter 键。

删除 Cloud Router 路由器时,关联的 Cloud NAT 网关也会被删除。

删除虚拟机

控制台

  1. 在 Google Cloud 控制台中,转到虚拟机实例页面。

    转到虚拟机实例

  2. 选中 vm-consumer-allowedvm-consumer-blockedvm-producer 虚拟机对应的复选框。

  3. 点击删除

  4. 删除 3 个实例?对话框中,点击删除

gcloud

  1. 如需删除所有虚拟机,请运行以下命令:

    gcloud compute instances delete vm-consumer-allowed vm-consumer-blocked vm-producer \
        --zone=us-central1-a
    

    出现提示时,按 Y 键进行确认,然后按 Enter 键。

删除使用方 VPC 网络及其子网

控制台

  1. 在 Google Cloud 控制台中,进入 VPC 网络页面。

    进入 VPC 网络页面

  2. 名称列中,点击 vpc-consumer

  3. 点击删除 VPC 网络

  4. 删除网络对话框中,点击删除

删除 VPC 时,其子网也会被删除。

gcloud

  1. 如需删除 vpc-consumer VPC 网络的子网,请运行以下命令:

    gcloud compute networks subnets delete subnet-consumer-allowed subnet-consumer-blocked \
       --region=us-central1
    

    出现提示时,按 Y 键进行确认,然后按 Enter 键。

  2. 如需删除 vpc-consumer VPC 网络,请运行以下命令:

    gcloud compute networks delete vpc-consumer
    

    出现提示时,按 Y 键进行确认,然后按 Enter 键。

删除提供方 VPC 网络及其子网

控制台

  1. 在 Google Cloud 控制台中,进入 VPC 网络页面。

    进入 VPC 网络页面

  2. 名称列中,点击 vpc-producer

  3. 点击删除 VPC 网络

  4. 删除网络对话框中,点击删除

删除 VPC 时,其子网也会被删除。

gcloud

  1. 如需删除 vpc-producer VPC 网络的子网,请运行以下命令:

    gcloud compute networks subnets delete subnet-vpc-producer \
       --region=us-central1
    

    出现提示时,按 Y 键进行确认,然后按 Enter 键。

  2. 如需删除 vpc-producer VPC 网络,请运行以下命令:

    gcloud compute networks delete vpc-producer
    

    出现提示时,按 Y 键进行确认,然后按 Enter 键。

后续步骤