配置防火墙规则

本页面介绍如何配置 Google Cloud 防火墙规则和您的对等网络防火墙规则。

将 Cloud VPN 隧道配置为连接到对等网络时,请检查并修改 Google Cloud 和对等网络中的防火墙规则,确保它们满足您的需求。如果您的对等网络也是一个 Virtual Private Cloud (VPC) 网络,则网络连接的两端都需要配置 Google Cloud 防火墙规则。

如需详细了解 Cloud VPN,请参阅以下资源:

  • 如需了解在设置 Cloud VPN 之前需要考虑的最佳实践,请参阅最佳实践

  • 如需详细了解 Cloud VPN,请参阅 Cloud VPN 概览

  • 如需了解本页面中所用术语的定义,请参阅关键术语

Google Cloud 防火墙规则

Google Cloud 防火墙规则适用于通过 Cloud VPN 隧道传入和传出 VPC 网络中的虚拟机实例的数据包。

隐式允许出站流量规则允许 Google Cloud 网络中的虚拟机实例和其他资源发出传出请求并接收已建立的响应。不过,隐式拒绝入站规则会屏蔽 Google Cloud 资源的所有传入流量。

您至少需要创建防火墙规则,以允许从对等网络到 Google Cloud 的入站流量。如果您创建了拒绝特定类型的流量的出站流量规则,则可能还需要创建其他出站流量规则。

包含 UDP 500、UDP 4500 和 ESP(IPsec、IP 协议 50)协议的流量始终允许在 Cloud VPN 网关上的一个或多个外部 IP 地址传入和传出。但是,Google Cloud 防火墙规则不适用于从 Cloud VPN 网关发送到对等 VPN 网关的封装后的 IPsec 数据包

如需详细了解 Google Cloud 防火墙规则,请参阅 VPC 防火墙规则概览

配置示例

如需查看限制入站流量或出站流量的多个示例,请参阅 VPC 文档中的配置示例

以下示例将创建一条“入站允许”防火墙规则。此规则允许从对等网络的 CIDR 到 VPC 网络中的虚拟机的所有 TCP、UDP 和 ICMP 流量。

控制台

  1. 在 Google Cloud Console 中,转到 VPN 通道页面。

    转到 VPN 隧道

  2. 点击要使用的 VPN 隧道。

  3. VPN 网关部分中,点击 VPC 网络的名称。此操作会将您定向到包含该隧道的 VPC 网络详细信息页面。

  4. 点击防火墙规则标签页。

  5. 点击添加防火墙规则。添加针对 TCP、UDP 和 ICMP 的规则:

    • 名称:输入 allow-tcp-udp-icmp
    • 来源过滤条件:选择 IPv4 范围
    • 来源 IP 地址范围:输入创建隧道时使用的远程网络 IP 地址范围值。如果您有多个对等网络范围,请输入每个范围。按 Tab 键可在各条目之间切换。 如需允许来自对等网络中所有来源 IPv4 地址的流量,请指定 0.0.0.0/0
    • 指定的协议或端口:选择 tcpudp
    • 其他协议:输入 icmp
    • 目标标记:添加任何一个或多个有效的标记。
  6. 点击创建

如果您需要允许从对等网络访问 VPC 网络上的 IPv6 地址,请添加 allow-ipv6-tcp-udp-icmpv6 防火墙规则。

  1. 点击添加防火墙规则。添加针对 TCP、UDP 和 ICMPv6 的规则:
    • 名称:输入 allow-ipv6-tcp-udp-icmpv6
    • 来源过滤条件:选择 IPv6 范围
    • 来源 IP 地址范围:输入创建隧道时使用的远程网络 IP 地址范围值。如果您有多个对等网络范围,请输入每个范围。按 Tab 键可在各条目之间切换。 如需允许来自对等网络中所有来源 IPv6 地址的流量,请指定 ::/0
    • 指定的协议或端口:选择 tcpudp
    • 其他协议:输入 58。58 是 ICMPv6 的协议编号。
    • 目标标记:添加任何一个或多个有效的标记。
  2. 点击创建

根据需要,创建其他防火墙规则。

或者,您也可以通过 Google Cloud 控制台的防火墙页面创建规则。

gcloud

运行以下命令:

gcloud  compute --project PROJECT_ID firewall-rules create allow-tcp-udp-icmp \
    --network NETWORK \
    --allow tcp,udp,icmp \
    --source-ranges IPV4_PEER_SOURCE_RANGE

IPV4_PEER_SOURCE_RANGE 替换为对等网络中的来源 IPv4 范围。

如果您有多个对等网络范围,请在 source-ranges 字段中提供英文逗号分隔列表 (--source-ranges 192.168.1.0/24,192.168.2.0/24)。

如需允许来自对等网络中所有来源 IPv4 地址的流量,请指定 0.0.0.0/0

IPv6 防火墙规则

如果您需要允许从对等网络访问 VPC 网络上的 IPv6 地址,请添加 allow-ipv6-tcp-udp-icmpv6 防火墙规则。

gcloud  compute --project PROJECT_ID firewall-rules create allow-ipv6-tcp-udp-icmpv6 \
    --network NETWORK \
    --allow tcp,udp,58 \
    --source-ranges IPV6_PEER_SOURCE_RANGE

58 是 ICMPv6 的协议编号。

PEER_SOURCE_RANGE 替换为对等网络中的来源 IPv6 范围。如果您有多个对等网络范围,请在 source-ranges 字段中提供英文逗号分隔列表 (--source-ranges 2001:db8:aa::/64,2001:db8:bb::/64)。

如需允许来自对等网络中所有来源 IPv6 地址的流量,请指定 ::/0

其他防火墙规则

根据需要,创建其他防火墙规则。

如需详细了解 firewall-rules 命令,请参阅 gcloud 防火墙规则文档。

对等防火墙规则

在配置对等防火墙规则时,请注意以下几点:

  • 配置相应规则,以允许在 VPC 网络中子网所使用的 IP 地址范围传入和传出的出站流量和入站流量。
  • 您可以选择允许所有协议和端口,也可以将流量限制为仅允许满足您需求的一组必要的协议和端口。
  • 如果您需要使用 ping 以便在 Google Cloud 中的对等系统和实例或资源之间进行通信,请允许 ICMP 流量。
  • 如果您需要使用 ping 访问对等网络上的 IPv6 地址,请在对等防火墙中允许 ICMPv6(IP 协议 58)。
  • 您的网络设备(安全设备、防火墙设备、交换机、路由器和网关)以及在系统上运行的软件(例如操作系统附带的防火墙软件)都可以实现本地防火墙规则。如需允许流量,请适当配置 VPC 网络路径中的所有防火墙规则。
  • 如果您的 VPN 隧道使用动态 (BGP) 路由,请确保允许链路本地 IP 地址的 BGP 流量。如需了解详情,请参阅下一部分。

对等网关的 BGP 注意事项

动态 (BGP) 路由使用 TCP 端口 179 交换路由信息。选择动态路由时,某些 VPN 网关(包括 Cloud VPN 网关)会自动允许此流量。如果您的对等 VPN 网关不允许此流量,请将其配置为允许在 TCP 端口 179 上传入和传出的流量。所有 BGP IP 地址都使用链路本地 169.254.0.0/16 CIDR 块。

如果您的对等 VPN 网关未直接连接到互联网,请确保将该网关和对等路由器、防火墙规则及安全设备配置为至少允许将 BGP 流量(TCP 端口 179)和 ICMP 流量传递到 VPN 网关。ICMP 不是必需的,但可用于测试 Cloud Router 路由器和您 VPN 网关之间的连接。要应用对等防火墙规则的 IP 地址范围必须包括 Cloud Router 路由器和您网关的 BGP IP 地址。

后续步骤

  • 为了确保组件与 Cloud VPN 正常通信,请参阅检查 VPN 状态
  • 如需使用高可用性和高吞吐量场景或多个子网方案,请参阅高级配置
  • 如需帮助解决使用 Cloud VPN 时可能会遇到的常见问题,请参阅问题排查