GCE:将虚拟机网络访问限制为仅限内部负载均衡器(k8s集群)

GCE:将虚拟机网络访问限制为仅限内部负载均衡器(k8s集群)

我有一个 Kubernetes 集群,出于一些我不会在这里讨论的原因,我在同一个网络上还有一个 VM 实例(运行一个 Docker 容器),提供一种特定类型的入口并将该流量转发到内部 LoadBalancer 类型的 k8s 服务。

一切正常。现在我想限制此虚拟机的网络访问,使其无法访问除内部 LoadBalancer 的 IP 之外的任何内容。

我有哪些选择可以实现这一目标?

答案1

您可以定义一个出口防火墙规则这只会影响这台虚拟机,您将需要 2。

对于这两条规则,将其定义target为运行 Docker 容器的 VM 实例,并将设置protocols and ports为全部。

对于第一条规则:

  • 定义actionallow
  • 将其定义destination为内部负载均衡器的 IP。
  • 将优先级定义为 900

对于第二条规则:

  • 定义actiondeny
  • 定义destination0.0.0.0/0
  • 将优先级定义为 1100

这将确保允许规则优先于拒绝所有规则。它还将确保拒绝所有规则优先于隐含的允许所有出口规则。

第一条规则将仅允许流向负载均衡器 IP 的出站流量,而拒绝所有规则将阻止所有其他出站流量。如果您只想限制 VPC 内部的流量,请将其替换0.0.0.0/0为您用于 VPC 的内部 IP 范围(默认值为 10.0.0.0/17)。

相关内容