

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 安全最佳实践
<a name="security"></a>

**提示**  
 通过 Amazon EKS 研讨会@@ [探索](https://aws-experience.com/emea/smb/events/series/get-hands-on-with-amazon-eks?trk=4a9b4147-2490-4c63-bc9f-f8a84b122c8c&sc_channel=el)最佳实践。

本指南提供有关保护依赖于 EKS 的信息、系统和资产的建议，同时通过风险评估和缓解策略实现业务价值。此处的指南是 AWS 发布的一系列最佳实践指南的一部分，旨在帮助客户根据最佳实践实施 EKS。性能、卓越运营、成本优化和可靠性指南将在未来几个月内发布。

## 如何使用本指南
<a name="how-to-use-this-guide"></a>

本指南适用于负责实施和监控 EKS 集群及其支持的工作负载安全控制的有效性的安全从业人员。为了便于阅读，该指南分为不同的主题领域。每个主题都以简要概述开头，然后列出保护 EKS 集群的建议和最佳实践。无需按特定顺序阅读主题。

## 了解分担责任模型
<a name="understanding-the-shared-responsibility-model"></a>

使用像 EKS 这样的托管服务时，安全和合规性被视为共同责任。一般而言，AWS 负责云的 “安全”，而您（客户）则负责云 “中” 的安全。在 EKS 中，AWS 负责管理 EKS 托管的 Kubernetes 控制平面。这包括 Kubernetes 控制平面节点、ETCD 数据库以及 AWS 提供安全可靠服务所需的其他基础设施。作为 EKS 的消费者，您对本指南中的主题负有主要责任，例如 IAM、pod 安全、运行时安全、网络安全等。

在基础设施安全方面，当您从自我管理的工作人员转移到托管节点组再到Fargate时，AWS将承担额外的责任。例如，在 Fargate 中，AWS 负责保护 instance/runtime 用于运行您的 Pod 的底层。

 **责任共担模型——Fargate** 

![\[责任共担模型——Fargate\]](http://docs.aws.amazon.com/zh_cn/eks/latest/best-practices/images/security/SRM-EKS.jpg)


AWS还将承担责任，通过Kubernetes补丁版本和安全补丁使经过EKS优化的AMI保持最新状态。使用托管节点组 (MNG) 的客户有责任通过 EKS API、CLI、Cloudformation 或 AWS 控制台将其节点组升级到最新 AMI。同样与 Fargate 不同，它 MNGs 不会自动扩展您的基础设施/集群。[这可以通过[集群自动扩缩器或其他技术来处理，例如Kar [pent](https://karpenter.sh/) er、AWS原生自动](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/cloudprovider/aws/README.md)缩放 SpotInst、Ocean或Atlas [sian的](https://spot.io/product/ocean)自动扶梯。](https://github.com/atlassian/escalator)

 **责任共担模型-MNG** 

![\[责任共担模型-MNG\]](http://docs.aws.amazon.com/zh_cn/eks/latest/best-practices/images/security/SRM-MNG.jpg)


在设计系统之前，重要的是要知道您的责任与服务提供商 (AWS) 之间的分界线。

有关责任共担模式的更多信息，请参阅 https://aws.amazon.com/compliance/shared-responsibility-model/

## 简介
<a name="introduction"></a>

在使用像 EKS 这样的托管 Kubernetes 服务时，有几个安全最佳实践领域是相关的：
+ 身份和访问管理
+ Pod 安全
+ 运行时安全
+ 网络安全性
+ 多租户
+ 多租户多账户
+ 侦探控制
+ 基础设施安全性
+ 数据加密和机密管理
+ 监管合规
+ 事件响应和取证
+ 图像安全

在设计任何系统时，您都需要考虑其安全影响以及可能影响您的安全状况的做法。例如，您需要控制谁可以对一组资源执行操作。您还需要能够快速识别安全事件，保护您的系统和服务免受未经授权的访问，并通过数据保护来维护数据的机密性和完整性。拥有一套定义明确且经过演练的流程来应对安全事件，也将改善您的安全状况。这些工具和技术非常重要，因为它们有助于实现诸如避免财务损失或履行监管义务等目标。

AWS 通过提供丰富的安全服务来帮助组织实现其安全和合规目标，这些服务是根据广大注重安全的客户的反馈而演变而来的。通过提供高度安全的基础，客户可以将更少的时间花在 “无差别的繁重工作” 上，而将更多的时间花在实现其业务目标上。

## 反馈
<a name="feedback"></a>

本指南发布的目的是 GitHub 收集来自更广泛 EKS/Kubernetes 社区的直接反馈和建议。如果您认为我们应该在指南中包含最佳实践，请在 GitHub 存储库中提交问题或提交 PR。我们的意图是在服务中添加新功能或出现新的最佳实践时，定期更新指南。

## 阅读更多内容
<a name="further-reading"></a>

 [Kubernetes 安全白皮书](https://github.com/kubernetes/sig-security/blob/main/sig-security-external-audit/security-audit-2019/findings/Kubernetes%20White%20Paper.pdf)由安全审计工作组赞助，描述了 Kubernetes 攻击面和安全架构的关键方面，旨在帮助安全从业人员做出合理的设计和实施决策。

CNCF 还发布了一份关于云原生安全的[白皮书](https://github.com/cncf/tag-security/blob/efb183dc4f19a1bf82f967586c9dfcb556d87534/security-whitepaper/v2/CNCF_cloud-native-security-whitepaper-May2022-v2.pdf)。该论文探讨了技术格局是如何演变的，并主张采用与 DevOps 流程和敏捷方法相一致的安全实践。

## 工具和资源
<a name="tools-and-resources"></a>

 [Amazon EKS 安全沉浸式研讨会](https://catalog.workshops.aws/eks-security-immersionday/en-US) 