开源镜像仓库 Harbor 的镜像安全
之前介绍过 Harbor,从安装部署到简单使用,今天这里就不再重复介绍了,有需要的可以跳转到'Harbor 功能强大的企业级私有仓库'查看,今天主要介绍 Harbor 的安全功能——镜像漏洞扫描
Harbor 是通过 Trivy 和 Clari 对镜像进行静态分析,通过对比 CVE 漏洞库,进行漏洞分析,默认情况下,通过 Harbor 的安装脚本 install.sh 进行安装的话,是漏洞扫描是未开启的状态,需要在安装的时候通过--with-trivy 和--with-clair 来开启
虽然这两种镜像漏洞扫描工具都可以安装,但是 Harbor 默认只能支持一种作为默认扫描工具,如果只安装其中一个,那就是默认漏洞扫描工具,如果两个都安装,默认是 Trivy 作为默认的漏洞扫描工具
安装看下效果
安装完成后就直接启动了 harbor 了,如果有什么问题,再处理下,比如容器名称冲突了之类的,harbor 是通过 docker-compose 起的,所以可以解决完,重新 docker-compose up -d 重新启动就可以了
比默认启动多了三个容器,就是安装的 trivy 和 clair 的镜像漏洞扫描工具,访问 Harbor 后台看下(默认登陆密码在 harbor.yml 中有设置)
已开启扫描器,并且默认 Trivy 是默认扫描器,也可以更改默认扫描器,另外除了这两种扫描器,你也可以添加其他扫描器
扫描器的使用方法有几种,自动、主动、定时
自动扫描,就是在镜像上传到 Harbor 仓库时,自动进行扫描,通过定义部署安全级别,阻止某些安全级别的镜像,上传到 Harbor,这部分配置在项目配置中
新建项目,在项目中的配置管理里面进行漏洞扫描的配置,分别配置是否阻止潜在漏洞镜像,按照危害级别进行阻止,勾选自动扫描镜像,即在镜像上传的时候进行扫描,我们勾选,上传镜像测试
在镜像仓库中可以看到正在扫描
等待扫描完成后,可以查看漏洞扫描结果
这个就是自动扫描,另外还有主动扫描和定时扫描,在审查服务中进行配置
在审查服务中,直接点击开始扫描,就启动所有镜像的扫描任务,如果需要定时扫描,则配置好定时扫描周期,保存后,Harbor 会按照固定周期定时扫描仓库中的所有镜像
Harbor 漏洞扫描还有个功能,就是 CVE 白名单,有时候有一些 CVE 我们想要忽略,就是这个 CVE 代号的漏洞,不在我们考虑的安全范围内,我们可以通过设置 CVE 白名单来进行忽略
CVE 白名单分两种,一种是项目白名单,一种是系统白名单,在项目中的配置管理中进行配置
项目白名单,就直接在项目中进行配置,添加 cve 对应的 cveid,并设置过期时间即可
系统白名单,需要在系统管理——配置管理——系统设置——部署安全性中进行添加
以上就是 Harbor 的镜像漏洞扫描,它主要依赖第三方的漏洞扫描工具,目前也只能是 CVE 已知漏洞静态分析扫描,比较鸡肋的地方,就是漏洞扫描结果的展示,只有一个大致的统计信息,这样,对于漏洞扫描来说,就失去了大部分意义,只能说是用来防止上传有漏洞的镜像,如果要做漏洞分析,还是需要直接用 trivy 进行扫描,会直接显示漏洞列表,有兴趣可以移步'推荐一款适用CI的容器漏洞扫描工具'了解
版权声明: 本文为 InfoQ 作者【运维研习社】的原创文章。
原文链接:【http://xie.infoq.cn/article/d8823492e059f66a8b3198523】。文章转载请联系作者。
评论