返回开源软件模块
gitleaks
AI 开源软件项目库

gitleaks

gitleaks/gitleaks

gitleaks(gitleaks/gitleaks)是一款面向Git 仓库历史密钥扫描的开源项目。Gitleaks 是一个用 Go 编写的开源密钥泄露检测工具,定位于在开发流程中发现密码、API Key、Token 等敏感信息。它可扫描 Git 历史补丁、目录文件以及 stdin 输入,支持基于规则与熵的检测,并输出 JSON、CSV、JUnit、SARIF 等报告。项目适合 DevSecOps 与数据防泄漏场景,可在本地开发、代码评审、CI/CD 流水线中统一执行,配合 baseline 忽略历史问题,重点拦截新增泄露。

open-source
security
secret
devsecops
dlp
cli
git
go
ci-cd
gitleaks
ai-powered
cicd
data-loss-prevention
golang
hacktoberfest
GitHub Stars
25.5k
Forks
2.0k
最近活跃
1 天内
部署方式
5
部署复杂度

项目简介

Gitleaks 是一个用 Go 编写的开源密钥泄露检测工具,定位于在开发流程中发现密码、API Key、Token 等敏感信息。它可扫描 Git 历史补丁、目录文件以及 stdin 输入,支持基于规则与熵的检测,并输出 JSON、CSV、JUnit、SARIF 等报告。项目适合 DevSecOps 与数据防泄漏场景,可在本地开发、代码评审、CI/CD 流水线中统一执行,配合 baseline 忽略历史问题,重点拦截新增泄露。

适合谁优先上手

想围绕“Git 仓库历史密钥扫描”寻找可私有化部署方案的个人或团队
偏好 Go 技术生态、希望后续可以自行扩展的人
愿意投入一定运维成本,换取更高可控性的团队

安装方式

安装方式包括 Homebrew、Docker 镜像、源码编译及发布页二进制。macOS 可直接 `brew install gitleaks`;容器方式可从 DockerHub 或 ghcr.io 拉取镜像并挂载待扫描目录运行;源码方式需先安装 Go,再 `git clone` 后执行 `make build`。部署前建议确认扫描环境能访问目标仓库与提交历史(如 CI 中设置 `fetch-depth: 0`),并按需准备 `.gitleaks.toml` 或环境变量配置,以便统一规则。

使用说明

启动后可先在仓库执行 `gitleaks git -v` 做验证,检查是否输出 Finding、RuleID、文件路径和提交信息。常用模式有:`git`(扫仓库历史)、`dir`(扫目录/文件)、`stdin`(扫标准输入)。落地时建议先用 `--report-path` 生成报告,再通过 `--baseline-path` 忽略存量问题,仅跟踪新增泄露;并按需设置 `--report-format`(如 json、sarif)对接平台。接入方式可选本地 pre-commit 或 GitHub Action 持续扫描。

部署与运营建议

部署前先看

部署 gitleaks 时,建议先跑最小可用版本,再补域名、权限、备份、监控这些正式环境必需项。

  • 推荐优先评估 Homebrew、Docker 这类成熟部署路径。
  • 如果依赖项较少,先容器化试跑通常是性价比最高的路径。
  • 不要跳过回滚方案设计;上线失败后能不能快速回退,比一次装成功更重要。

长期维护怎么看

真正决定 gitleaks 值不值得长期保留的,不是首日安装成功,而是后续运维和团队接手成本。

  • 建议在内部记录登录入口、关键配置、升级步骤和排障入口,避免工具变成“只有部署者自己懂”的孤岛。
  • 优先把它接进 Git 仓库历史密钥扫描、目录与文件敏感信息检测 这类高频场景,才能更快验证 ROI。
  • 每隔一段时间复盘:它到底替代了什么、节省了什么、后续是否还值得继续维护。

优势与注意事项

这个项目的加分点

  • 已有提炼后的项目摘要,能更快判断是否值得试跑
  • 支持 Homebrew、Docker、Go 源码构建 等部署方式,落地路径相对明确
  • 适用场景已经比较明确,可直接对照 Git 仓库历史密钥扫描、目录与文件敏感信息检测 等业务需求评估
  • 标签覆盖 open-source、security、secret,利于后续做站内专题聚合

上正式环境前要注意

    中国用户部署时重点关注

    如果你在中国大陆网络环境部署,优先确认 Docker 镜像拉取速度,必要时准备镜像源或代理。
    除 GitHub 仓库外,建议同时检查官网文档站在国内网络下的访问速度与可读性。
    凡是涉及邮件、对象存储、OAuth、Webhook 的能力,都建议在正式部署前先做一轮国内环境联调。

    常见问题 FAQ

    gitleaks 是什么?

    gitleaks(gitleaks/gitleaks)是一款面向Git 仓库历史密钥扫描的开源项目。Gitleaks 是一个用 Go 编写的开源密钥泄露检测工具,定位于在开发流程中发现密码、API Key、Token 等敏感信息。它可扫描 Git 历史补丁、目录文件以及 stdin 输入,支持基于规则与熵的检测,并输出 JSON、CSV、JUnit、SARIF 等报告。项目适合 DevSecOps 与数据防泄漏场景,可在本地开发、代码评审、CI/CD 流水线中统一执行,配合 baseline 忽略历史问题,重点拦截新增泄露。

    gitleaks 适合谁?

    如果你正在寻找围绕“Git 仓库历史密钥扫描”的开源方案,并希望保留私有化部署或自主可控能力,gitleaks 值得优先试跑。

    gitleaks 怎么部署更稳?

    建议优先按照 Homebrew、Docker、Go 源码构建、GitHub Action、pre-commit 这类官方或社区成熟方案做最小可用部署,先验证核心流程,再决定是否做正式上线。

    gitleaks 在中国用户环境下要注意什么?

    重点检查镜像拉取、依赖下载、文档访问速度,以及邮件、Webhook、对象存储等外部依赖是否能顺利联调。

    gitleaks 的部署复杂度高吗?

    gitleaks 目前可归为“中”复杂度:建议根据依赖项数量、部署方式和后续运维能力来决定是否进入正式环境。