容器安全保护容器的完整性。这包括从其保管的应用到其所依赖的基础架构等全部内容。容器安全需要完整且持续。通常而言,企业拥有持续的容器安全包含以下方面:

保护容器管道和应用
保护容器部署环境和基础架构
整合企业安全工具,遵循或增强现有的安全策略
容器广受欢迎,因为它能简化应用或服务及其所有依赖项的构建、封装与推进,而且这种简化涵盖整个生命周期,并且跨越不同的环境和部署目标。然而,容器安全依然面临着一些挑战。静态安全策略和检查清单无法针对企业内的容器进行扩展。供应链需要更多的安全策略服务。团队需要权衡容器的网络与监管需求。构建与运行时工具和服务需要分离。

将安全内置于容器管道,可以为您的基础架构增添防护,从而保障容器的可靠性、可扩展性和信赖度。通过本网络培训课堂系列,您可以获取有关整个容器应用堆栈和生命周期安全性的专家视角。

立即观看点播视频
将安全内置于容器管道
收集镜像
容器从一层层的文件创建而来。容器社区通常将这些文件称为“容器镜像”。对安全而言,基础镜像至关重要,因为它要用做创建衍生镜像的起点。容器安全从寻找基础镜像的可信来源开始。不过,即使是使用受信任的镜像,添加应用和更改配置也会带来新的变数。在引入外部内容以构建应用时,您需要预先考虑内容管理。

在收集容器镜像时,思考以下问题:
容器镜像是否有签名并且来源可信?

运行时和操作系统层是否处于最新状态?

容器的更新速度和频率如何?

已知问题是否已确定?如何跟踪?

管理访问权限
获取了镜像后,下一步是管理您团队使用的所有容器镜像的访问权限和升级。这意味着要保护好您下载和构建的镜像。私有注册表可帮助您利用基于角色的分配来控制访问权限,也有助于您通过分配元数据到容器来管理内容。元数据可以提供辨别和跟踪已知漏洞等所需的信息。私有注册表也为您提供相应的功能,为您存储的容器镜像实现自动化和分配策略,同时最大限度减少可能为容器带来漏洞的人为错误。

在决定如何管理访问权限时,思考以下问题:
可以利用哪些基于角色的访问控制来管理容器镜像?

有没有可协助容器整理的标记功能?能否对容器进行标记,仅允许用于开发、测试或生产用途?

注册表是否提供跟踪已知漏洞所需的可见元数据?

能否利用注册表来分配和自动化策略(例如,查验签名和扫描代码等)?

整合安全测试和自动化部署
管道的最后一步是部署。完成构建之后,您需要按照行业标准进行管理。此处的诀窍是,了解如何通过自动化策略对构建进行安全问题标记,特别是在发现新的安全漏洞时。由于容器修补必定不如重新构建容器的解决方案,因此整合安全测试时应当要考虑能触发自动重新构建的策略。在这一步中,首先是运行能跟踪和标记问题的组件分析工具。其次是开发相应的工具来实现基于策略的自动化部署。

在整合安全测试和自动化部署时,思考以下问题:
如何避免修补运行中的容器,而使用触发器来通过自动化更新重新构建和替换容器?

保护您的基础架构
另一层容器安全性是主机操作系统(OS)提供的隔离。您需要可以提供最大程度容器隔离的主机 OS。这是保护容器部署环境的一个重要组成部分。利用容器运行时启用主机 OS,最好是通过编排系统来管理。若要使容器平台具有弹性,可使用网络命名空间来隔绝应用和环境,并通过安全挂载来附加存储。API 管理解决方案中应包含身份验证和授权、LDAP 集成、端点访问控制和速率限制。

在决定如何保护容器基础架构时,思考以下问题:
哪些容器需要相互访问?它们要如何发现彼此?

如何控制对共享资源(如网络和存储)的访问和管理?

如何管理主机更新?是否所有容器需要同时进行更新?

如何监控容器的健康状况?

如何自动扩展应用容量以满足需求?