Harbor整合容器漏洞扫描工具-Trivy
Trivy检测操作系统包(Alpine、RHEL、CentOS等)和应用程序依赖(Bundler、Composer、npm、yarn等)的漏洞。
安装harbor 和trivy
安装harbor参考:https://199604.com/2488
重点在 执行install.sh
加成--with-trivy
参数即可整合Trivy
如果第一次安装没有添加trivy安装参数,建议参考以下文档进行添加:
https://goharbor.io/docs/2.3.0/install-config/reconfigure-manage-lifecycle/
其他参数可参考:
https://goharbor.io/docs/2.3.0/install-config/run-installer-script/
配置trivy漏洞库
harbor整合的trivy,其加载漏洞库是直接从trivy官网走的,但是公司网络无法访问github,能访问速度很慢无法下载完成扫描。
因此只能使用离线模式,下载漏洞库文件:https://github.com/aquasecurity/trivy-db/releases
或者在能正常拉取数据库的trivy执行trivy image --download-db-only
手工下载更新db库,然后将保存在/root/.cache/trivy/db/
下的文件拷贝到harbor的trivy-db目录中,目录映射到容器中的/home/scanner/.cache/trivy/db/
下,宿主机目录在harbor.yml中定义的data_volume目录下的trivy-adapter/trivy/db
目录里
修改
harbor.yml
的trivy.skip_update
为true
,不进行漏洞库升级
![]()
trivy在harbor中的使用
实时按需扫描
按照各自的需求,单独对某个项目进行实时安全漏洞的扫描
选择某个项目
上传时自动扫描
用户根据需求对上传的镜像自动进行安全检查。同时也使用于管理员自动检测用户上传的镜像的安全状态,对于存在明显重大漏洞的镜像通知镜像所属人员进行漏洞修复。此处需要管理员权限或者更高权限才可以看到该配置
定时自动扫描
管理员或者安全人员可以定时对所有项目进行安全检查,以便了解其安全状态。
参考:
https://aquasecurity.github.io/trivy/v0.30.4/docs/misconfiguration/scanning/
https://goharbor.io/docs/2.6.0/install-config/