社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

Docker镜像安全守护神HarborGuard

各种折腾 • 11 月前 • 227 次点击  

简介

什么是 HarborGuard?

HarborGuard 是一个现代化的容器安全扫描平台,通过集成多种安全扫描工具来简化容器安全管理。它提供直观的  Web  界面,帮助用户管理和可视化 Docker 镜像的安全评估。

主要特点

  • 全面的扫描能力:
    • 支持 TrivyGrypeSyftDockleOSV Scanner 和 Dive 等 6 种主流容器安全工具。
    • 自动进行漏洞检测与分类、生成软件物料清单 ( SBOM) 以及容器最佳实践验证。
  • 先进的可视化:
    • 提供交互式漏洞散点图、历史扫描对比图表和实时进度监控。
    • 支持按严重性进行过滤和分组。
  • 优秀的开发者体验:
    • 采用 React 19 + Next.js 15 现代化架构。
    • 使用 TypeScriptPrisma ORM,并支持 SQLite/PostgreSQL 数据库。
    • 支持通过环境变量进行全面配置,适应不同的部署需求。
  • 企业级就绪:
    • 提供 RESTful API 用于程序化访问。
    • 支持批量报告导出和持久化的扫描历史。

应用场景

该平台主要用于解决容器安全工作流中的各种问题,尤其适合以下场景:

  • 统一管理:取代管理多个命令行工具输出的繁琐工作,提供一个统一的仪表盘来查看所有扫描结果。
  • 历史追溯:持久化存储扫描结果,方便进行历史数据对比和趋势分析。
  • 合规性报告:可以方便地导出单个工具的报告或完整的 ZIP 包以满足合规性要求。
  • 实时监控:通过 WebSocket 集成,实时跟踪扫描进度。

HarborGuard 通过其强大的功能和良好的用户体验,成为容器安全管理的理想选择。

安装

在群晖上以 Docker 方式安装。

HarborGuard 支持 SQLite/PostgreSQL 数据库,个人使用  SQlite 就足矣

docker cli 安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 harborguard 和 子目录
mkdir -p /volume1/docker/harborguard/data

# 进入 harborguard 目录
cd /volume1/docker/harborguard

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name harborguard \
   -p 3495:3000 \
   -v /var/run/docker.sock:/var/run/docker.sock \
   -v $(pwd)/data:/data \
   -e DATABASE_URL="file:/data/app.db" \
   ghcr.io/harborguard/harborguard:latest

docker-compose 安装

也可以用  docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3.8'

services:
harborguard:
    image:ghcr.io/harborguard/harborguard:latest
    container_name:harborguard
    restart:unless-stopped
    ports:
      -"3495:3000"
    volumes:
      -/var/run/docker.sock:/var/run/docker.sock
      -./data:/data
    environment:
      DATABASE_URL:"file:/data/app.db"

然后执行下面的命令

# 新建文件夹 harborguard 和 子目录
mkdir -p /volume1/docker/harborguard/data

# 进入 harborguard 目录
cd /volume1/docker/harborguard

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d 

运行

第一次启动的时间有点长,需要在日志中看到数据库初始化成功并且  Web 启动才能访问

[DB] Initialization completed successfully
   ▲ Next.js 15.4.6
   - Local:        http://13c71a5528fa:3000
   - Network:      http://13c71a5528fa:3000
 ✓ Starting...
 ✓ Ready in 849ms
[ScannerService] Created new instance ek4soy

在浏览器中输入 http://群晖IP:3495 就能看到界面

点左上角 New Scan --> Local --> 搜索框

选中一个本地镜像,例如 portainer/portainer-ce:latest

点 Start Scan 开始扫描

稍等一会儿就会有结果

查看详情,可以看到不同引擎诊断的结果

一般来说,正规途径下载的都不会有大问题,但漏洞总归是很难避免的

可以继续扫描其他的镜像

参考文档

HarborGuard/HarborGuard: Modern container security scanning platform with multi-tool integration.
地址:https://github.com/HarborGuard/HarborGuard

Harbor Guard
地址:https://demo.harborguard.co/

@所有人:写文不易,如果你都看到了这里,请点个在看,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/186328