重磅发布|腾讯云容器安全服务网络隔离功能已上线
背景
随着容器、微服务、持续交付等云原生技术普及,大量应用基于 K8s 容器编排构建。相比传统网络模式,在云原生场景下,存在大量微服务模块间网络调用,集群内东西向通信流量激增,网络边界变得更加模糊。
容器环境中,容器 IP 和端口变换频繁,应用混合部署带来的通信关系复杂,传统基于静态 IP 和端口的边界安全规则已无法适用容器环境下细粒度的访问控制要求。默认情况下,K8s 集群中不对 Pod 进行任何请求限制,任意 Pod 之间可以自由通信。正因此,在面对网络攻击时,没有安全规则的容器网络将给攻击者更多的自由和渗透空间。
如何实施容器间网络访问控制,打造安全的容器网络通信边界和通信架构,成为云原生时代关键的网络安全问题。为助力企业破局,腾讯云容器安全服务容器网络隔离功能于 9 月重磅发布,提供基于 K8s 原生 Networkpolicy 的集群容器间网络策略下发和管理能力,帮助企业快速构建安全可信的容器网络。
K8s Networkpolicy 介绍
针对上述问题,Kubernetes 社区提供了官方解决方案,自 v1.3 版本起,新增了 Networkpolicy 资源,用于定义 Pod 之间的网络访问控制规则,并在 v1.7 版本中成为 GA 功能,API 版本为 networking.k8s.io/v1。
Networkpolicy 实现了细粒度的容器访问控制策略,使用“Label 标签”选定 Pod 范围,支持基于 Pod 应用粒度对指定 Pod 进行出入站访问控制,可配置 IP 段、命名空间以及应用(Pod)端口级规则。
默认情况下,一个应用(Pod)的网络会接受任何来源的通信请求,根据最佳安全实践,应用(Pod)应该只放行其业务范围内的正常通信请求。这对攻击者在初始访问阶段进行的入侵探测和漏洞利用,以及网络失陷后进行的横向扫描和渗透具有很大的防御效果。
以下是一个 Networkpolicy 策略示例,要求 db 应用只能够和 web 服务之间通信,拒绝其它通信连接请求:
通过 Networpolicy 实施容器网络访问控制具有以下优势:
是 Kubernetes 社区官方方案,功能稳定,跟随社区发展。
可实施应用级别(Pod)粒度的网络控制,使用 K8s 标签(Label)选择器划分网络边界,通过标签能够方便的将业务关系映射到系统架构上,便于实施基于业务的管理。
贴合 K8s 使用习惯,Networkpolicy 作为 K8s 资源,通过 yaml 定义网络访问规则。
功能全面,兼容性好,已经有众多 K8s 网络组件支持 Networkpolicy 的实现,包括 Kube-router、Calico、Cilium、Romana 等主流组件。
不过,K8s Networkpolicy 通过编写 yaml 定义访问控制规则,存在一定的学习和使用门槛,同时在策略的管理上也存在不便。
腾讯云容器网络隔离功能介绍
腾讯云容器安全服务于 2021 年 7 月正式上线,提供镜像扫描、漏洞防御、集群安全管理、基线管理、运行时入侵防御的全流程容器安全解决方案。
容器网络隔离功能于 9 月发布,该特性提供基于 K8s 原生 Networkpolicy 的集群容器间网络策略下发和管理能力,通过对集群内的防护对象进行定义,设置防护对象的出站和入站规则实现容器间网络访问控制。
通过容器网络隔离功能,可以实现:
实施基于 Networkpolicy 的容器网络访问控制,快速创建和下发访问控制策略,全面兼容 K8s Networkpolicy。
提供管理平台,统一管理集群所有网络策略,一键快速开启和关闭网络策略。
支持自动发现 K8s 集群新增 Networkpolicy 策略及策略变更。
支持多集群和混合云集群,包括 TKE 集群及自建 K8s 集群。
支持详细的策略变更审计等。
同时我们提供策略可视化编辑功能,不用编写复杂的 yaml 规则,通过图形化配置来快捷的创建和配置容器网络策略规则,大大降低学习和配置成本,直观展现出网络策略的实施效果,哪些请求能允许访问,哪些请求不被允许非常清楚:
这里提供了 9 个实施容器网络访问控制的常见场景,您可基于容器网络隔离功能快速构建安全可信的容器网络。(查看地址:https://cloud.tencent.com/document/product/1285/80415)
如何快速体验?
登录腾讯云容器安全服务控制台可免费开启体验
登录控制台-点击“开启试用”,领取首次免费体验权益
进入容器安全服务-网络策略
选择步骤可参考产品帮助文档:
评论