容器应用程序逐渐普遍,已经从开发者爱好工具,进入企业内部基础架构。不过镜像文件更新工作,对于运维人员依旧是件不简单的工作。在近日,Google旗下公有云平台GCP,宣布推出基础镜像文件更新托管服务(managed base images),“从最初构建应用程序时就可以使用。”目前此服务所支持的Linux发行版,分别有CentOS 7、Debian 9,以及Ubuntu 16.04,用户可以直接从GCP市场下载。
这一次推出的新服务,Google会提供用户多种操作系统基础镜像文件,后续更新工作也由该公司进行。如此,开发者除了能时时保持镜像文件在最新版本,由Google进行镜像文件把关,运维人员也不须从未知来源下载镜像文件,借以提高容器基础架构的运行安全。
不过Google表示,即便导入此基础镜像文件更新托管服务,容器镜像文件经过扫描后,仍可能发现镜像文件存在漏洞。 Google表示,出现此状况主要有三大原因。首先,扫瞄出的漏洞可能被归类为低风险漏洞,而项目维护人多半优先处理高风险漏洞,导致当前版本未有可用更新。第二个原因,则可能该项目刚爆出漏洞事件,还未有可用镜像文件更新。最后,则可能为开源项目新推出的功能,可能对系统安全带来风险,但项目维护人并不视其为漏洞。
由于容器的生命周期极短,不停进行重新构建、部局,为了确保用户容器镜像文件安全,Google建议企业用户创建高度一致的CI/CD流程,时时确保基础架构环境内的容器镜像文件,皆有经过把关、认证程序。而该公司表示,实施方法总共有四大方向。第一方向,导入集中化管理的CI/CD,除了减少使用容器存储库数量,而正式环境的软件上线工作,必须通过中央发渠道进行。第二方向,则是选用安全存储库作为镜像文件来源,从开发源头就做好网络安全工作。
再者,创建镜像文件扫描、分析的使用习惯,可使用第三方或公有云厂商原生服务执行。最后,当镜像文件要进入正式环境前,运维人员得确保只有经认证镜像文件,才能部局至正式环境。
而Google表示,未考虑使用此托管服务的开发者,也可尝试其他开源方案,像是该公司发布的开源容器工具Distroless images。此镜像文件内仅打包用户的应用程序、Runtime相依性,删去标准Linux发行版内的套件管理工具、Shells,缩小镜像文件的攻击表面。