Kubernetes NetworkPolicy
Kubernetes NetworkPolicy 是什么?
Kubernetes NetworkPolicyKubernetes NetworkPolicy 是按命名空间作用的资源,通过 IP、端口与协议控制哪些 Pod 可以与哪些 Pod 或外部端点通信。
NetworkPolicy 由集群的 CNI 插件(Calico、Cilium、Antrea 等)执行,通过标签选择目标 Pod。每条策略包含 Ingress 与 Egress 规则,可按 Pod、命名空间或 CIDR 设置 from/to 选择器,以及端口和协议。同一命名空间的策略互为叠加,默认拒绝只有在某个方向上有策略选中该 Pod 时才生效。NetworkPolicy 是 Kubernetes 主要的东西向防火墙,用于实现微分段、租户隔离以及在 Pod 被攻陷后限制爆炸半径。Kubernetes 1.29 起的 AdminNetworkPolicy 与 BaselineAdminNetworkPolicy 提供集群级、优先级化的规则,供平台团队使用。
● 示例
- 01
在租户命名空间下应用 default-deny ingress,并对 ingress controller 开放显式允许规则。
- 02
Egress 策略将应用 Pod 限制为受管数据库 CIDR 与集群 DNS 服务。
● 常见问题
Kubernetes NetworkPolicy 是什么?
Kubernetes NetworkPolicy 是按命名空间作用的资源,通过 IP、端口与协议控制哪些 Pod 可以与哪些 Pod 或外部端点通信。 它属于网络安全的 云安全 分类。
Kubernetes NetworkPolicy 是什么意思?
Kubernetes NetworkPolicy 是按命名空间作用的资源,通过 IP、端口与协议控制哪些 Pod 可以与哪些 Pod 或外部端点通信。
Kubernetes NetworkPolicy 是如何工作的?
NetworkPolicy 由集群的 CNI 插件(Calico、Cilium、Antrea 等)执行,通过标签选择目标 Pod。每条策略包含 Ingress 与 Egress 规则,可按 Pod、命名空间或 CIDR 设置 from/to 选择器,以及端口和协议。同一命名空间的策略互为叠加,默认拒绝只有在某个方向上有策略选中该 Pod 时才生效。NetworkPolicy 是 Kubernetes 主要的东西向防火墙,用于实现微分段、租户隔离以及在 Pod 被攻陷后限制爆炸半径。Kubernetes 1.29 起的 AdminNetworkPolicy 与 BaselineAdminNetworkPolicy 提供集群级、优先级化的规则,供平台团队使用。
如何防御 Kubernetes NetworkPolicy?
针对 Kubernetes NetworkPolicy 的防御通常结合技术控制与运营实践,详见上方完整定义。
Kubernetes NetworkPolicy 还有哪些其他名称?
常见的别称包括: NetworkPolicy, K8s netpol, AdminNetworkPolicy。
● 相关术语
- cloud-security№ 838
Pod 安全标准(PSS)
Pod 安全标准(PSS)是 Kubernetes 定义的 Privileged、Baseline、Restricted 三种安全档位,用以规范 Pod 配置并替代已弃用的 PodSecurityPolicy。
- cloud-security№ 597
Kubernetes 准入控制器
准入控制器是 Kubernetes API server 的插件,在请求被持久化前进行拦截,按照策略对对象进行校验、变更或拒绝。
- cloud-security№ 757
OPA Gatekeeper
OPA Gatekeeper 是 CNCF 的策略控制器,基于 Open Policy Agent 与 Rego 语言,在 Kubernetes 上执行准入与审计策略。
- cloud-security№ 602
Kyverno
Kyverno 是 CNCF 的 Kubernetes 策略引擎,使用原生 YAML(而非新 DSL)编写策略,实现资源的校验、变更与生成。
- cloud-security№ 582
Kata Containers
Kata Containers 是一个开源运行时,通过为每个容器或 Kubernetes Pod 启动一个轻量虚拟机来提供硬件级隔离。
- cloud-security№ 455
gVisor
gVisor 是 Google 开源的应用层内核,在用户态拦截容器的系统调用,从而显著缩小暴露给不可信工作负载的宿主内核攻击面。