云原生安全概述

本概述定义了一个模型,用于在 Cloud Native 安全性上下文中考虑 Kubernetes 安全性。

警告: 此容器安全模型只提供建议,而不是经过验证的信息安全策略。

你可以分层去考虑安全性,云原生安全的 4 个 C 分别是云(Cloud)、集群(Cluster)、容器(Container)和代码(Code)。

说明: 这种分层方法增强了)在安全性方面的 防御能力,该方法被广泛认为是保护软件系统的最佳实践。

云原生安全的 4C

在许多方面,云(或者位于同一位置的服务器,或者是公司数据中心)是 Kubernetes 集群中的 可信计算基。 如果云层容易受到攻击(或者被配置成了易受攻击的方式),就不能保证在此基础之上构建的组件是安全的。 每个云提供商都会提出安全建议,以在其环境中安全地运行工作负载。

如果你是在你自己的硬件或者其他不同的云提供商上运行 Kubernetes 集群, 请查阅相关文档来获取最好的安全实践。

下面是一些比较流行的云提供商的安全性文档链接:

关于在 Kubernetes 集群中保护你的基础设施的建议:

保护 Kubernetes 有两个方面需要注意:

  • 保护可配置的集群组件

根据你的应用程序的受攻击面,你可能需要关注安全性的特定面,比如: 如果你正在运行中的一个服务(A 服务)在其他资源链中很重要,并且所运行的另一工作负载(服务 B) 容易受到资源枯竭的攻击,则如果你不限制服务 B 的资源的话,损害服务 A 的风险就会很高。 下表列出了安全性关注的领域和建议,用以保护 Kubernetes 中运行的工作负载:

容器

容器安全性不在本指南的探讨范围内。下面是一些探索此主题的建议和连接:

应用程序代码是你最能够控制的主要攻击面之一,虽然保护应用程序代码不在 Kubernetes 安全主题范围内,但以下是保护应用程序代码的建议:

接下来

学习了解相关的 Kubernetes 安全主题: