【发布时间】:2019-03-10 17:01:04
【问题描述】:
我正在尝试将 docker 镜像推送到公共仓库中的 docker hub。如何确保最终用户的安全,例如维护映像的完整性等。在公共 docker hub 存储库中推送映像时应遵循哪些最佳安全实践?
【问题讨论】:
我正在尝试将 docker 镜像推送到公共仓库中的 docker hub。如何确保最终用户的安全,例如维护映像的完整性等。在公共 docker hub 存储库中推送映像时应遵循哪些最佳安全实践?
【问题讨论】:
选项一:
您可以查看Creating an Official Image 部分内容:
从高层次上看,官方图片以一组 GitHub 拉取请求形式的提案开始。详细而客观的提案要求记录在以下 GitHub 存储库中:
官方图片团队在社区贡献者的帮助下,正式审核每个提案并向作者提供反馈。在接受提案之前,这个初步审查过程可能需要一些反复。
审核过程中也存在主观考虑。这些主观担忧归结为一个基本问题:“这张图片一般有用吗?”例如,python 官方图片对更大的 Python 开发者社区“普遍有用”,而上周用 Python 编写的晦涩文本冒险游戏则不然。
一旦新提案被接受,作者有责任保持其图片为最新并回应用户反馈。官方存储库团队负责在 Docker Hub 上发布图像和文档。官方图片的更新遵循相同的拉取请求流程,但审查较少。官方图片团队最终充当所有更改的看门人,这有助于降低引入质量和安全问题的风险。
选项二:
如果您使用的是私有存储库,这是一项付费服务
将Docker Security Scanning 用于您的公共图像。从他们的文档中:
Docker Cloud 和 Docker Hub 可以扫描私有存储库中的图像,以验证它们是否没有已知的安全漏洞或暴露,并报告每个图像标签的扫描结果。
关于公共 Docker 映像本身的安全性:
Docker 映像不经过安全审核或测试过程。因此,它更喜欢使用official images,因为根据大约一年前发表的一篇文章,非官方图像可能容易受到攻击或包含恶意二进制文件,该文章谈到大约 17 个恶意图像属于一个用户,这些图像已在 Docker Hub 上列出门户网站,在 2017 年 5 月至 2018 年 5 月期间,当 Docker 团队最终介入以将其撤下时,它们仍然活跃。如果您打算使用非官方图像。您可以自行承担使用它的风险。
您可能要检查的链接:
【讨论】:
docker CLI、服务等是否有办法验证下载图像的完整性,以防止途中被恶意修改。看起来答案更倾向于保护被放到 docker hub 上的东西,而不是下载部分的安全措施,对吧?