如何保护公共Docker Hub镜像?

3

我正在尝试将docker镜像推送到公共仓库的docker hub。如何确保终端用户的安全,例如维护图像的完整性等。在推送镜像到公共docker hub仓库时应遵循哪些最佳安全实践?

1个回答

1

选项一:

您可以查看创建官方镜像部分,其中提到:

从高层次上来看,官方镜像始于一组GitHub拉取请求形式的提案。详细和客观的提案要求在以下GitHub存储库中有所记录: 官方镜像团队与社区贡献者的帮助下,正式审查每个提案并向作者提供反馈。这个初步审查过程可能需要一些来回沟通,直到提案被接受为止。 审查过程中还存在主观考虑因素。这些主观问题归结为一个基本问题:“这个镜像是否普遍有用?”例如,Python官方镜像对更大的Python开发者社区“普遍有用”,而上周用Python编写的鲜为人知的文字冒险游戏则不是。 一旦新提案被接受,作者有责任保持其镜像的最新状态并回应用户反馈。官方仓库团队负责在Docker Hub上发布镜像和文档。官方镜像的更新遵循相同的拉取请求过程,尽管审核较少。官方镜像团队最终作为所有更改的守门人,有助于减轻引入质量和安全问题的风险。

选项二:

如果您正在使用私有存储库,则需要支付费用。

对于您的公共镜像,请使用Docker安全扫描。根据他们的文档:

Docker Cloud和Docker Hub可以扫描私有存储库中的镜像,以验证它们是否没有已知的安全漏洞或风险,并为每个镜像标记报告扫描结果。


关于公共Docker镜像本身的安全性:

Docker镜像不会经过安全审核或测试流程。因此,最好使用官方镜像,因为非官方镜像可能存在漏洞或包含恶意二进制文件。一篇约一年前发布的文章提到了一个用户拥有大约17个恶意镜像,这些镜像立即在Docker Hub门户网站上列出,它们在2017年5月至2018年5月期间仍然活跃,直到Docker团队最终介入将它们下架。如果您打算使用非官方镜像,则需要自行承担风险。

您可能想要检查的链接:


这个 https://titanous.com/posts/docker-insecurity 仍然值得关注吗?我的意思是,docker CLI、服务等是否有一种验证已下载镜像完整性的方法,以防止在传输过程中进行恶意修改。似乎答案更偏向于确保放入 docker hub 的内容安全,而不是针对下载部分采取的安全措施,对吗? - humanityANDpeace
是的,这是关于一张图片的问题,你可以安全地使用它。例如,如果你在Docker中使用流行的Web服务器或某种编程语言,最好选择官方镜像,因为有保证它不包含恶意代码——除非公司本身被黑客攻击并注入了一些代码。如果我给你一张没有Dockerfile的镜像,并告诉你使用它,你会相信我吗? - Mostafa Hussein

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接