什么是加固镜像?为什么要使用它们?
Table of contents
在当今多样化的软件环境中,容器镜像通常设计为灵活且兼容广泛。虽然这使其适用于许多场景,但也可能导致镜像包含超出特定工作负载所需的组件。Docker 加固镜像(Docker Hardened Images)采用“设计上最小化”的方法,帮助减小镜像体积、限制攻击面,并简化安全与合规工作流。
加固镜像通过最小化容器镜像中的内容来解决这个问题。软件越少,意味着漏洞越少、部署越快,每周需要处理的红色告警也越少。
对于平台工程师和安全团队而言,加固镜像提供了一条摆脱 CVE 分析循环的出路,让你能够专注于交付安全、合规的基础设施,而无需疲于应对突发安全事件。
什么是加固镜像?
加固镜像是经过精心最小化和加固的容器镜像,旨在减少漏洞并满足严格的安全与合规要求。与可能包含非必要组件(从而增加风险)的标准镜像不同,加固镜像经过精简,仅包含安全运行应用所必需的内容。
加固镜像的优势
- 减少攻击面:通过移除非必要组件,加固镜像限制了攻击者潜在的入侵点。
- 提升安全态势:定期更新和漏洞扫描有助于确保加固镜像长期保持安全。
- 促进合规:包含签名元数据(如 SBOM)有助于满足监管和组织合规标准。
- 运营效率:更小的镜像体积带来更快的拉取速度、更低的运行时开销以及更少的云资源成本。
什么是 Docker 加固镜像?
Docker 加固镜像(DHIs)更进一步,将最小化、安全的设计与企业级支持和工具相结合。这些镜像以安全为核心构建,持续维护、测试和验证,以满足当今最严苛的软件供应链和合规标准。
Docker 加固镜像默认安全、设计上最小化,并由 Docker 维护,让你无需操心。
Docker 加固镜像与通用加固镜像的区别
- 符合 SLSA 标准的构建:Docker 加固镜像的构建满足 SLSA 构建级别 3,确保构建过程防篡改、可验证、可审计,有效抵御供应链威胁。
- 无发行版(Distroless)方法:与捆绑了完整操作系统(包含 shell、包管理和调试工具)的传统基础镜像不同,无发行版镜像 仅保留运行应用所需的最小操作系统组件。通过排除不必要的工具和库,攻击面最多可减少 95%,并能提升性能和减小镜像体积。
- 持续维护:所有 DHIs 都会受到持续监控和更新,以保持接近零的已知可利用 CVE,帮助你的团队避免补丁疲劳和突发告警。
- 合规就绪:每个镜像都包含加密签名的元数据:
- 兼容性优先的设计:Docker 加固镜像在提供最小运行环境的同时,保持与常见 Linux 发行版的兼容性。它们移除了 shell 和包管理器等非必要组件以增强安全性,但仍保留基于熟悉发行版标准的小型基础层。镜像通常提供基于 musl libc(Alpine)和 glibc(Debian)的版本,支持广泛的应用兼容性需求。
为什么要使用 Docker 加固镜像?
Docker 加固镜像(DHIs)默认安全、设计上最小化,并由 Docker 维护,让你无需操心。它们提供:
- 安心构建的镜像:超精简且无发行版,DHIs 消除了高达 95% 的传统容器攻击面。
- 告别补丁恐慌:通过持续的 CVE 扫描和 SLA 支持的修复,Docker 助你领先于威胁。
- 审计就绪的镜像:所有 DHIs 都包含签名的 SBOM、VEX 和来源信息,支持安全与合规工作流。
- 与你的技术栈兼容的镜像:提供 Alpine 和 Debian 版本,DHIs 可直接集成到你现有的 Dockerfile 和流水线中。
- 企业级支持背书的镜像:获得 Docker 的支持和对关键漏洞的快速响应,让你高枕无忧。