确保Kubernetes在大规模环境下安全的3个要点

确保Kubernetes在大规模环境下安全的3个要点

译文
作者:布加迪编译 2020-02-17 08:00:02

云计算 Kubernetes容器在多云环境中非常流行,广泛部署于诸多行业。Sumo Logic产品营销副总裁Kalyan Ramanathan去年写道,这种开源容器操作系统“彻底重塑了现代应用堆栈的未来。”

【51CTO.com快译】Kubernetes容器在多云环境中非常流行,广泛部署于诸多行业。Sumo Logic产品营销副总裁Kalyan Ramanathan去年写道,这种开源容器操作系统“彻底重塑了现代应用堆栈的未来。”

[[315061]]

但采用范围扩大后带来了安全隐患,2019年爆出的一系列安全漏洞就是佐证。第一个漏洞发现于2018年底,该权限提升漏洞使任何用户都可以通过Kubernetes应用编程接口服务器与后端服务器建立连接。

Platform9的产品营销负责人Kamesh Pemmaraju说,使用的集群和节点的数量在增加;一些受访者告诉Platform9,他们公司在一两个集群上运行数百个节点。许多公司在本地和公共云基础设施上都运行Kubernetes。

NeuVector的首席技术官Gary Duan和Platform9的联合创始人兼首席技术官Roopak Parikh谈到了大规模利用Kubernetes安全功能的三种方法。

Duan说:“Kubernetes有一些基本的安全功能,主要针对其自身基础架构的安全,这包括基于角色的访问控制(RBAC)、秘密管理以及pod安全策略(更侧重于资源管理)。”

“然而,Kubernetes不应部署在关键业务环境中,也不能为没有专用容器安全工具的情况下管理敏感数据的应用程序而部署。Kubernetes系统的容器本身(比如关键的API服务器)可能存在漏洞,使攻击者能够危及编排基础架构本身。”

1. 基于角色的访问控制

生产级应用软件比去年多得多,部署在Kubernetes上的数据或其他应用程序也多得多。公司应将Kubernetes视为复杂的分布式系统,由多个组件组成,部署到生产环境后需要对每层加以保护。

在应用程序层,强烈建议实施网络策略,并将Kubernetes集群连接到企业内部的验证提供者。你往往可以保护所有系统的安全,但保护密钥也很重要,并使用多因子验证和证书,确保别人无法通过那些很容易的途径潜入。

Kubernetes操作人员应确保用户有正确的角色,并将用户分配到不同的空间,以便特定用户与特定应用关联起来。系统部署和升级时,那些角色还具有可扩展性。

集群中的每个应用程序应隔离或分隔,以便负责人可以决定哪些用户能看到系统的不同部分。

分层安全方法最适合深度防御。应该部署云原生安全工具以保护从CI/CD管道到运行时环境的整个生命周期,因为传统的安全工具在Kubernetes环境中不管用。

这始于构建过程中的漏洞扫描,然后持续进入到生产环节。若没有深度网络可见性和保护,比如第7层容器防火墙,就无法实现真正的深度防御。这种关注容器的防火墙能够使用容器微分段技术检测和防止基于网络的攻击、探测、扫描、分流以及容器之间的横向移动。公司扩大部署规模后,面临管理和保护数十个乃至数百个Kubernetes集群(一些横跨公共云和私有云)的管理难题。

采用集中执行的联合全局安全策略的全局多集群管理成了一个关键问题。

在Kubernetes之上添加Istio或Linkerd之类的服务网格还可以通过加密pod到pod通信来提高安全性。服务网格还有DevOps团队喜欢的其他好处。但这为基础架构带来了额外的攻击途径,必须确保安全。

2. 不安全的代码检查

监控代码对于大规模确保Kubernetes的安全至关重要。如果贵公司在运行第三方应用程序甚至内部应用程序,如何知道其中的代码是否安全?系统操作员应问自己在运行哪个版本、存在哪种类型的安全漏洞。

需要进行扫描,以查明是否存在不安全的代码,或者是否在使用旧版本的Python库。外头一些工具可以帮助你找到那些细节,并出具报告。你可以在此基础上拒绝或允许运行那些应用程序。

许多公司能够将安全策略声明为代码,所部署的新服务的应用程序行为记录在标准的yaml文件中,由Kubernetes直接部署为自定义资源定义。安全团队还要确保所有补丁都是最新的。

对于你在运行的服务器和操作系统,要确保已打上补丁,不存在与操作系统本身有关的任何漏洞。你可以使用App Armor等技术,或者确保为在Kubernetes内外运行的组件赋予最低权限。

3. 检查敞开的端口

这点很重要:在整条管道中明确定义应自动确保安全的所有集成点,然后为完整的安全自动化制定路线图。最初,几个步骤可以自动化,比如触发漏洞扫描、就可疑网络活动发出警报。

安全团队需要保护可以使用负载均衡器连接至外界的应用程序,或可能在你的Kubernetes集群上打开的端口。团队需要检查它们配置是否正确、是否敞开端口。

对于面向外界的API服务器而言,这尤为重要。

有人发现某个系统被其他公司暴露在互联网面前,我们在日志中会看到一些人试图探测服务器,以查明那些端口是不是打开的。Kubernetes本身有一个API服务器,过去我们见过敞开的端口。

你是否在保护主机策略,以确保正确的防火墙在运行?如果你在公共云中运行,要确保使用合适的安全组,只允许执行你需要执行的实际操作。还要确保Kubernetes组件有合适类型的验证或授权机制,以便只有部分用户能够登录。

原文标题:3 tips to keep Kubernetes safe at scale,作者:Jonathan Greig

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/245331.html<

赞 (0)
管理的头像管理
上一篇2025-04-26 03:33
下一篇 2025-04-26 03:34

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注