在 Amazon EKS 中保护 Kubernetes 工作负载

云计算
re:Invent
0
0
## 视频 <video src="https://dev-media.amazoncloud.cn/30-LibaiGenerate/31-LiBaiRebrandingVideo/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS-LBrebrandingWCaptionCN.mp4" class="bytemdVideo" controls="controls"></video> ## 导读 在本论坛中,了解可以帮助您保护 [Amazon EKS](https://aws.amazon.com/cn/eks/?trk=cndc-detail) 群集的功能。获取有关安全从业者和群集管理员如何保护依赖于 [Amazon EKS](https://aws.amazon.com/cn/eks/?trk=cndc-detail) 的信息、系统和资产,同时为其客户提供业务价值的指导。本论坛涵盖特定于 [Amazon EKS](https://aws.amazon.com/cn/eks/?trk=cndc-detail) 的关于管理 Kubernetes 访问、亚马逊云科技身份和访问管理 (IAM) 以及网络安全的安全指南。 ## 演讲精华 <font color = "grey">以下是小编为您整理的本次演讲的精华,共1400字,阅读时间大约是7分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。</font> 乔治·约翰(George John)和米·豪斯勒(Mi Hauser)在会议开始时通过对比门和墙来阐述安全性问题。他们讨论的主题是关于如何使用亚马逊EKS保护Kubernetes工作负载的安全性。 乔治首先概述了他们议程的三个主要方面: 1. 保护EKS集群的访问权限 2. 保护从EKS集群到外部资源的访问权限 3. 保护EKS集群内工作负载之间的访问权限 他将这些方面比喻成城堡墙壁一样的防御层,用以保护内部的安全。 在讨论保护对EKS集群的访问权限时,乔治首先解释了他们在2018年EKS推出时就开始使用Kubernetes RBAC和IAM来管理访问权限的方法。这种初始配置文件方法的好处包括: - 利用IAM,用户不需要独立的身份提供者 - 所有IAM的优势,如通过CloudTrail的可审计性和多因素身份验证支持 然而,乔治也指出了配置文件方法的缺点: - 需要使用多个API来启动具有访问权限的集群 - 可能因为错误配置而导致用户体验不佳,甚至可能导致用户被锁定在集群之外 - 创建集群的IAM身份会被自动授予在配置文件中的管理员访问权限,如果删除可能会导致创建者无法访问自己的集群 为了解决这些问题,乔治提到EKS正在研究一个新的访问管理系统,这将基于大量的客户反馈和GitHub上超过75个客户请求。新的访问管理系统的关键优势包括: - 使用亚马逊云科技的API来管理集群访问,简化自动化过程 - 在集群创建完成之前配置访问权限,从而允许并行授权 - 对认证和授权的更详细控制,而不仅仅是权限 预定义的访问策略与Kubernetes集群角色类似,便于实现基于角色的访问控制。这些策略主要用于诸如EMR等需要客户EKS访问权的亚马逊云科技服务。乔治随后将这些策略交给了他的搭档米兹,以便了解更多关于即将推出的访问管理API和进行演示的细节。据米兹介绍,新访问系统将利用EKS API直接管理集群访问条目,认证模式包括:配置地图(适用于希望保持现状的现有集群)、API和配置地图(作为过渡选项,同时检查API和配置地图)以及API仅(用于完全管理访问的完全管理描述集群)。创建访问条目时,将IAM身份映射到授予访问权的EKS策略,并使用IAM条件特定于群集。此外,还将限制策略使用IAM条件,以在EKS中授予亚马逊云科技服务访问客户集群所需的策略。为了保护来自EKS群的访问,乔治介绍了控制pod可以访问群外哪些资源的挑战。最初,pod简单地继承了来自EC2节点IAM角色的权限。这容易设置,但过于宽松,因为一个节点上的所有pod都共享其角色。为了解决这个问题,EKS在2019年推出了用于服务帐户的IAM角色(IRSA),以便根据其服务帐户直接将IAM角色附加到Kubernetes pod上。这使得能够将仅所需权限适当地授权给每个工作负载。然而,EKS收到了反馈,尽管强大,但IRSA也有一些缺点。例如,群集管理员通常没有必要的IAM权限来自己管理IRSA角色,这需要向IAM管理员提交任何更改的票证。此外,不能在跨群集重用角色而不更新信任策略,这是一个额外的协调问题。最后,使用IRSA启动群集需要它们首先完全准备就绪。 1. IAM管理员创建一个标准的IAM角色,使其信任EKS来承担其职责;2. EKS集群管理员将这个角色映射到Kubernetes命名空间和服务帐户;3. EKS将映射的角色凭证注入到匹配的Pod中;4. SDK调用EKS元数据端点以安全地交换令牌,以获取临时凭证。 在现场演示环节,Mi展示了如何创建EKS Pod身份绑定、部署配置为利用该身份的Pod,以及使用映射的角色成功访问S3和Secrets Manager的过程。演示还展示了Pod无法访问未经授权的资源,以及在适当使用IAM条件时,其他集群中的Pod无法访问彼此资源的场景。Mi进一步解释了EKS如何与kube2iam等开源工具集成,以安全地处理凭证交换。 关于内部集群安全方面,乔治探讨了如何使用Kubernetes NetworkPolicy来限制集群中Pod之间的通信。然而,由于默认VPC CNI缺乏对NetworkPolicy的支持,之前的EKS用户必须安装第三方CNI插件才能使用NetworkPolicy。乔治宣布,从2022年8月开始,VPC CNI将原生支持使用高性能eBPF包过滤器的NetworkPolicy。网络策略控制器将把策略同步到每个节点上的VPC CNI Agent。 Mi详细阐述了新NetworkPolicy实现的工作原理:网络策略控制器将在EKS控制平面运行,并将Kubernetes策略转换为EKS CRD。每个节点上的VPC CNI Agent读取CRD以强制执行策略。她还展示了一个允许只允许来自授权命名空间的入站流量的策略示例。此外,乔治还介绍了其他一些最近的EKS安全功能。 在总结部分,乔治重点介绍了亚马逊云科技(Amazon Web Services)近期为Elastic Kubernetes Service (EKS)新增的一系列安全增强功能。这些功能包括: - 网络负载均衡器(NLB)安全组:对通过NLB暴露的Kubernetes服务实施访问控制。 - EKS控制平面PrivateLink:通过亚马逊虚拟专用网络(VPC)私下访问EKS API,而非通过互联网公共部分。 - [Amazon Detective](https://aws.amazon.com/cn/detective/?trk=cndc-detail):利用Detective优化对EKS虚拟专用网(VPC)流量日志的分析。 - GuardDuty节点代理:在EKS节点上部署操作系统级入侵检测。 - 镜像签名:仅允许经过认证的容器镜像在EKS工作负载中运行。 总的来说,乔治回顾了EKS如何为用户提供多种选项来保护集群访问、出站访问和工作负载间的内部通信,使客户能够灵活地选择合适的策略。他强调,亚马逊云科技将继续致力于加强EKS的安全功能,以帮助用户在Kubernetes工作负载周围建立坚固的防御体系。 演讲以邀请与会者提问并期待在会议剩余时间内进一步了解所讨论的安全功能作为结尾。 **下面是一些演讲现场的精彩瞬间:** 领导者最近描述了一种新型身份验证模式,该模式可用于在[Amazon EKS](https://aws.amazon.com/cn/eks/?trk=cndc-detail)集群中启用RBAC和IAM之间的切换。 ![](https://d1trpeugzwbig5.cloudfront.net/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS/images/rebranded/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS_0.png) 通过使用API和配置映射模式,EKS API现已成为身份验证的真正来源。 ![](https://d1trpeugzwbig5.cloudfront.net/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS/images/rebranded/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS_1.png) 新的EKS角色将使得服务帐户能够轻松地在群集之间重用,而不需要信任策略更新。 ![](https://d1trpeugzwbig5.cloudfront.net/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS/images/rebranded/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS_2.png) 作为替代方案,亚马逊云科技推出了EKS pod身份。 ![](https://d1trpeugzwbig5.cloudfront.net/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS/images/rebranded/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS_3.png) 此外,亚马逊云科技还推出了一项新功能,可以通过亚马逊云科技签名程序对部署到ECS集群的容器镜像进行签名和验证,包括像ECR这样的容器注册表以及像Gatekeeper这样的准入控制器,以便在群集部署之前验证镜像。 ![](https://d1trpeugzwbig5.cloudfront.net/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS/images/rebranded/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS_4.png) EKS for identity简化了以安全方式向pod授予IAM权限的过程。 ![](https://d1trpeugzwbig5.cloudfront.net/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS/images/rebranded/CON335-Securing_Kubernetes_workloads_in_Amazon_EKS_5.png) ## 总结 本次演讲主要关注了亚马逊EKS中保护Kubernetes工作负载的三个关键方面:集群内访问权限、从集群外的访问以及集群内的访问权限。 首先,演讲者介绍了一种名为集群访问管理的新EKS功能,该功能将简化IAM用户和角色对EKS集群的访问权限。这将用亚马逊云科技的API替代当前的配置地图方法,从而实现更简单化的权限管理。 其次,他们展示了一种名为EKS Pod Identity的新型方法,用于为新Kubernetes工作负载提供细粒度的IAM权限。这种方法不再依赖于OIDC提供商和角色信任策略,从而改进了现有服务帐户IAM角色的使用。它还允许使用IAM标签进行基于属性的访问控制。 最后,演讲者强调了EKS现在所支持的网络策略,它可以限制Pod到Pod和Pod到VPC的流量。这消除了安装第三方插件的需求,同时提高了性能并降低了操作开销。 总之,这次演讲概述了这些新的EKS功能和与其他亚马逊云科技服务的集成(如GuardDuty)如何在亚马逊云科技上为用户们的Kubernetes工作负载提供深度防御安全措施。 ## 演讲原文 ## 想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站! [2023亚马逊云科技re:Invent全球大会 - 官方网站](https://webinar.amazoncloud.cn/reInvent2023/?s=8739&smid=19458 "2023亚马逊云科技re:Invent全球大会 - 官方网站") [点击此处](https://aws.amazon.com/cn/new/?trk=6dd7cc20-6afa-4abf-9359-2d6976ff9600&trk=cndc-detail "点击此处"),一键获取亚马逊云科技全球最新产品/服务资讯! [点击此处](https://www.amazonaws.cn/new/?trk=2ab098aa-0793-48b1-85e6-a9d261bd8cd4&trk=cndc-detail "点击此处"),一键获取亚马逊云科技中国区最新产品/服务资讯! ## 即刻注册亚马逊云科技账户,开启云端之旅! [【免费】亚马逊云科技“100 余种核心云服务产品免费试用”](https://aws.amazon.com/cn/campaigns/freecenter/?trk=f079813d-3a13-4a50-b67b-e31d930f36a4&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技“100 余种核心云服务产品免费试用“") [【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”](https://www.amazonaws.cn/campaign/CloudService/?trk=2cdb6245-f491-42bc-b931-c1693fe92be1&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用“")
目录
亚马逊云科技解决方案 基于行业客户应用场景及技术领域的解决方案
联系亚马逊云科技专家
亚马逊云科技解决方案
基于行业客户应用场景及技术领域的解决方案
联系专家
0
目录
关闭