Kubernetes的零信任基础设施成为每个人关注的焦点。突如其来的宅在家里,让很多企业的工作方式从现场办公转为远程或混合办公。零信任安全已成为准备转向远程或混合办公模式的公司关注的焦点。同样,其他组织、平台和基础设施也需要关注这些安全原则,尤其是已经部署了Kubernetes的组织。采用零信任架构对于确保其所有环境的安全至关重要。Kubernetes安全挑战当今的行业普遍面临着向IT公司交付更快、更高效和更大规模软件的压力。为了寻求强大的可移植性和灵活性,许多IT公司已经转向Kubernetes(K8S)来满足这些市场需求。同时,我们也要看到,虽然K8S是IT企业高效、大规模交付软件的优秀解决方案,但它也存在安全挑战和漏洞。正因为Kubernetes是一个相对较新的系统,这使得它成为网络攻击者的诱人猎物,再加上其运行模式的动态特性,坏人很容易在没有采取必要的安全措施的情况下离开。穿透空间。ShadowserverFoundation的研究人员发现,仅今年一年就有380,000个开放的KubernetesAPI服务器暴露在互联网上。虽然这些服务器目前仅被确定为暴露且未受到攻击,但这个惊人的数字隐藏了API服务器的漏洞和潜在危险。这也是事实,SaltSecurity的2022年API安全状况显示,尽管95%的受访企业在过去12个月内其API安全受到威胁,但34%的受访企业没有API安全政策。零信任:Kubernetes的安全救星?面对这种严峻形势,业界需要一种新的解决方案来加强Kubernetes的部署。由此引发的另一个问题是,如何在保证强大安全态势的同时,继续发挥K8S的诸多优势。对于许多人来说,答案很明确——零信任安全。什么是零信任安全?零信任安全模型由Forrester于2009年首次提出,此后,这一开创性的概念彻底改变了网络安全的标准。现有的传统安全模型是“信任,但验证”,零信任安全改变了这一概念,取而代之的是“从不信任,始终验证”,这意味着所有用户和设备都必须是未认证的。不断检查和验证不同。过去的传统安全模型都是为了保护边缘。一旦用户通过身份验证,他们就被授予访问网络的权限,只要他们在网络中,一切通常都是可信的!零安全信任意味着永远不会有完全信任的时刻。恰恰相反,它总是假设用户和设备受到威胁,并且必须通过持续的授权、身份验证和身份验证过程才能保持与网络的连接或采取任何行动。这样,零信任安全可以帮助组织保持警惕,永不放松警惕,防止不良行为者的渗透。Kubernetes的零信任架构零信任安全为Kubernetes安全挑战提供了真正的解决方案,同时实现合规性本身也带来了新的挑战。这里需要指出的是,零信任安全是一组目标而不是一个精确的工具,因此有许多不同的方法来实现零信任架构。那么,您如何将零信任原则应用于Kubernetes?让我们从如何保护KubernetesAPI服务器开始,它是每个Kubernetes集群控制平面的核心。由于此API服务器用于控制所有Kubernetes对象,因此确保安全的API访问是保护受控Kubernetes访问的安全基石,从而实现零信任Kubernetes。为了控制和保护API服务器,首先需要控制所有传入和传出的流量,这可以通过传输层安全(TLS)来完成。一旦所有API服务器通信都受到保护,Kubernetes可以提供可用于实现零信任安全的钩子(Hooks)。这里主要有四种类型的钩子:认证、授权、准入控制、审计和日志记录。它们对于Kubernetes的零信任架构的成功至关重要。身份验证为了遵守Kubernetes的零信任安全原则,第一步是确保所有用户和服务帐户定期进行身份验证,这意味着在执行任何API调用之前都需要进行身份验证。为实现此身份验证,可以使用多种安全模型和插件,例如客户端证书、HTTP基本身份验证和令牌。此外,零信任模型还推荐使用多维认证(MFA)进一步增强安全性。授权除了必要的认证,所有的用户和服务账号都必须有授权,这也是零信任安全的一个关键原则。为了保持强大的安全性,所有用户操作都应该受到限制,即使在身份验证之后也是如此。换句话说,不允许用户无限制地执行所有任务,但他们被赋予足够的访问权限来完成他们想要执行的任务。对于零信任Kubernetes,不应允许访问Kubernetes集群的所有用户和服务帐户执行任何操作。相反,只有当用户(通过身份验证)具有执行请求任务的明确授权时,才允许执行Kubernetes请求。因此,每个请求都应指定请求者的用户名、请求的操作以及该操作的效果。访问控制保持对所有用户和操作的可见性是零信任模型的另一个重要支柱。这就是为什么准入控制器是Kubernetes零信任架构的关键组件。使用准入控制器,组织可以管理创建、修改、删除或连接到Kubernetes对象的所有请求。内置准入控制器帮助组织实施操作和执行他们的策略,而动态准入控制器允许他们实时修改请求。至于更细化的安全控制方式,系统中使用了多个准入控制器,并且许多控制器都兼容Kubernetes部署,例如ResourceQuota和LimitRanger。审计和日志记录无论安全状况如何,审计都是其弹性的基本组成部分。审计允许组织监控用户、应用程序甚至Kubernetes集群中的控制平面执行的所有操作。然后由团队决定在本地文件系统或外部日志系统中记录这些审计事件的位置。适当的审计和日志记录在确保Kubernetes基础设施符合政府政策方面也发挥着关键作用。因此,在不同的组织、机构和平台中,零信任安全正在成为决定网络安全健康的关键角色,Kubernetes当然也不例外。译者介绍徐磊,51CTO社区编辑,某领先电商公司技术副总监,专注于Java后端开发、技术管理、架构优化、分布式开发等领域。原标题:ZeroTrustInfrastructureforKubernetes,作者:MeredithShubel
