Google Cloud Firewall 是否默认阻止子网间流量?
Does Google Cloud Firewall block inter-subnet traffic by default?
GCP 防火墙有默认的隐含规则来阻止所有入口并允许所有出口。那是针对 VPN 之外的外部流量。
但这会默认阻止单个 VPN 中子网之间的流量吗?
大部分是,默认情况下不允许给定 VPC 网络上的子网之间的流量(除了在您的项目中自动创建的 default
网络)。
请注意,这实际上会阻止 所有 实例之间的流量,而不仅仅是子网之间的流量。所以,重点实际上是在实例上,而不是在子网上——但效果是默认情况下,不同子网上的实例(default
网络上的实例除外)将无法通信。
请记住,VPC 防火墙规则是 enforced at the instance level,即使它的配置是在网络级别。
While the rule is enforced at the instance level, its configuration is associated with a VPC network.
如您所见,只有两个 implied rules:
- 允许所有出口(到任何其他地址,包括内部地址)
- 拒绝所有入口(来自任何其他地址,包括内部地址)
仅 default
网络上还有 default rules。
- allow internal traffic (
default-allow-internal
) -- 此规则允许实例之间的流量(不考虑子网)
- 允许来自任何来源的 ssh 进入
- 允许来自任何来源的 rdp 入口
- 允许来自任何来源的 icmp 入口
因此,在非 default
网络上,您需要创建与 default-allow-internal
规则等效的规则(允许来自网络上所有 IP 的所有协议到网络上的任何实例)。
GCP 防火墙有默认的隐含规则来阻止所有入口并允许所有出口。那是针对 VPN 之外的外部流量。
但这会默认阻止单个 VPN 中子网之间的流量吗?
大部分是,默认情况下不允许给定 VPC 网络上的子网之间的流量(除了在您的项目中自动创建的 default
网络)。
请注意,这实际上会阻止 所有 实例之间的流量,而不仅仅是子网之间的流量。所以,重点实际上是在实例上,而不是在子网上——但效果是默认情况下,不同子网上的实例(default
网络上的实例除外)将无法通信。
请记住,VPC 防火墙规则是 enforced at the instance level,即使它的配置是在网络级别。
While the rule is enforced at the instance level, its configuration is associated with a VPC network.
如您所见,只有两个 implied rules:
- 允许所有出口(到任何其他地址,包括内部地址)
- 拒绝所有入口(来自任何其他地址,包括内部地址)
仅 default
网络上还有 default rules。
- allow internal traffic (
default-allow-internal
) -- 此规则允许实例之间的流量(不考虑子网) - 允许来自任何来源的 ssh 进入
- 允许来自任何来源的 rdp 入口
- 允许来自任何来源的 icmp 入口
因此,在非 default
网络上,您需要创建与 default-allow-internal
规则等效的规则(允许来自网络上所有 IP 的所有协议到网络上的任何实例)。