HarborGuard通知中心配置清单:Teams、Slack与Gotify实时推送Critical漏洞

📅 2026/8/22 14:05:51
HarborGuard通知中心配置清单:Teams、Slack与Gotify实时推送Critical漏洞
HarborGuard通知中心配置清单Teams、Slack与Gotify实时推送Critical漏洞【免费下载链接】HarborGuardModern image vulnerability scanning patching platform with multi-tool integration.项目地址: https://gitcode.com/gh_mirrors/ha/HarborGuardHarborGuard 是一款现代化的容器镜像漏洞扫描与补丁管理平台image vulnerability scanning patching platform内置强大的通知中心当扫描发现 Critical 或 High 级别漏洞时自动通过 Microsoft Teams Webhook、Slack Webhook 与自托管 Gotify 实时推送告警让你第一时间掌握镜像安全风险。一、通知中心能做什么HarborGuard 集成 Trivy、Grype、Syft、Dockle、OSV、Dive 等多种扫描工具扫描完成后会汇总各严重级别漏洞数量。只要发现Critical 或 High 漏洞通知服务就会立即向所有已配置的渠道并行发送告警卡片内容包括 漏洞严重级别Critical / High 出问题的镜像名称image:tag 四级漏洞数量统计Critical / High / Medium / Low 告警时间戳核心实现位于 src/lib/notifications.ts配置项定义在 src/lib/config.ts。二、完整配置清单8 个环境变量一览所有通知配置都通过环境变量完成模板见 .env.example 的 Notifications 段落环境变量作用适用渠道是否必填NOTIFY_ON_HIGH_SEVERITY总开关是否为高危发现发送通知全部建议设为trueTEAMS_WEBHOOK_URLTeams Incoming Webhook 地址Microsoft Teams二选一以上SLACK_WEBHOOK_URLSlack Incoming Webhook 地址Slack二选一以上GOTIFY_SERVER_URLGotify 服务器地址http/httpsGotify需与 Token 成对GOTIFY_APP_TOKENGotify 应用令牌Gotify需与地址成对APPRISE_API_URLApprise 服务 API 地址Apprise80 渠道可选APPRISE_CONFIG_KEYApprise 配置键指向预设渠道Apprise可选APPRISE_URLS直连渠道列表逗号分隔Apprise可选 小贴士Gotify 的服务器地址和 App Token必须同时配置Apprise URL 必须以http://或https://开头——启动时会自动校验配置不完整会直接报错提示避免配了却没生效的坑。三、一键配置 Microsoft Teams 实时推送Teams 推送最简单只需一个 Webhook 地址打开目标 Teams 频道 →添加应用→ 搜索Incoming Webhook并启用选择你的 Teams 账号Webhook 即创建成功复制 Webhook URL写入环境变量TEAMS_WEBHOOK_URLhttps://outlook.office.com/webhook/your-webhook-url NOTIFY_ON_HIGH_SEVERITYtrue推送效果是一张带主题色的告警卡片Critical 漏洞显示红色 High 显示橙色 ⚠️并附镜像名和漏洞数量明细团队成员在聊天流里一眼就能看到风险。四、一键配置 Slack 实时推送Slack 配置与 Teams 几乎一致在 Slack 中打开目标频道 →添加应用/集成→ 选择Incoming Webhooks授权选择频道后复制生成的 Webhook URL写入环境变量SLACK_WEBHOOK_URLhttps://hooks.slack.com/services/your-webhook NOTIFY_ON_HIGH_SEVERITYtrueHarborGuard 会以 Slack 富文本附件attachment形式推送左侧色条对应漏洞严重级别字段中展示镜像名和四级漏洞统计底部带有 Harbor Guard 署名和发送时间。五、Gotify 自托管推送私有化告警闭环不想依赖公有 SaaSGotify 是轻量级自托管推送服务告警直接推送到你的手机 App 或 Web 客户端全程内网可达。部署 Gotify 服务器Docker 一条命令即可在 Gotify Web 界面创建一个应用复制App Token同时配置两个变量GOTIFY_SERVER_URLhttps://gotify.example.com GOTIFY_APP_TOKENAC5X0f7ISmwz-zJHarborGuard 会按严重级别自动映射 Gotify 优先级Critical 对应最高优先级 10触发强提醒/震动High 为 8保证真正危险的告警第一时间出现在你手机通知栏。六、进阶玩法Apprise 一次配置覆盖 80 渠道除了 Teams / Slack / GotifyHarborGuard 还支持Apprise——一个支持 80 多种通知渠道的网关服务Discord、邮件、企业微信、Telegram、Pushover 等。方式一走 Apprise 服务端配置APPRISE_API_URLhttps://apprise.example.com APPRISE_CONFIG_KEYharborguard方式二直接指定渠道 URL逗号分隔APPRISE_API_URLhttps://apprise.example.com APPRISE_URLSmailto://user:passgmail.com,discord://webhook/...Apprise 消息同样带严重级别标记Critical 标记为 failure 类型High 为 warning 类型支持 Markdown 格式正文。七、触发机制详解什么时候会收到推送理解触发时机才能避免为什么没收到通知的疑问扫描完成时触发扫描引擎Sensor执行完毕并汇总结果后若critical 0 || high 0自动调用 notifyScanComplete严重级别过滤只有critical和high两级会真正发送Medium/Low 直接跳过并行发送、互不影响所有已配置渠道通过Promise.allSettled并发推送某个 Webhook 挂了也不会影响其他渠道静默保护如果没有任何渠道配置服务会记录调试日志并安静跳过不会产生报错八、部署与快速验证Docker 部署时通过-e传入通知变量即可docker run -p 8080:8080 \ -e PORT8080 \ -e TEAMS_WEBHOOK_URLhttps://your-webhook-url \ -e NOTIFY_ON_HIGH_SEVERITYtrue \ -v /var/run/docker.sock:/var/run/docker.sock \ ghcr.io/harborguard/harborguard:latest验证步骤清单启动日志无 GOTIFY_APP_TOKEN is required 等配置校验报错对任一含高危漏洞的镜像发起新扫描侧边栏New Scan扫描完成后 1 分钟内检查 Teams / Slack / 手机 Gotify 是否收到告警卡片日志中出现Sent notifications for critical severity finding即全链路打通 ✅九、常见问题 FAQQ1我配置了 Webhook 但一直没收到消息先确认NOTIFY_ON_HIGH_SEVERITYtrue再确认扫描的镜像确实存在 Critical 或 High 漏洞——中低危发现按设计不会推送。Q2可以只开一个渠道吗可以。四个渠道组Teams / Slack / Gotify / Apprise彼此独立配置任意一个即可生效也可以全部同时开启。Q3Gotify 只配了服务器地址没配 Token 会怎样启动时配置校验会直接报GOTIFY_APP_TOKEN is required when GOTIFY_SERVER_URL is set提醒你把两个变量配全。Q4告警频率会不会刷屏HarborGuard 只按每次扫描完成 存在高危漏洞这一事件触发配合平台内置的定时扫描Scheduled Scans与扫描队列限流MAX_CONCURRENT_SCANS告警量可控不会风暴式刷屏。相关文档README.md环境变量完整说明、.env.example配置模板、src/lib/notifications.ts通知服务源码、src/lib/scanner/ScannerService.ts扫描完成触发逻辑。照着这份清单配置从拿到 Webhook 到收到第一条 Critical 漏洞推送最快 5 分钟搞定。【免费下载链接】HarborGuardModern image vulnerability scanning patching platform with multi-tool integration.项目地址: https://gitcode.com/gh_mirrors/ha/HarborGuard创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考