☰
断网环境也能跑:pentest-ai-agents Docker离线包部署详解
2026/10/7 15:04:41 网站建设 项目流程

断网环境也能跑:pentest-ai-agents Docker离线包部署详解

【免费下载链接】pentest-ai-agentsTurn Claude Code into your offensive security research assistant. Specialized AI subagents for authorized penetration testing plan engagements, analyze recon, research exploits, build detections, audit STIGs, and write reports.项目地址: https://gitcode.com/gh_mirrors/pe/pentest-ai-agents

pentest-ai-agents 是一个为渗透测试打造的 Claude Code AI 子智能体集合,内置 50 个安全专家智能体,帮你规划渗透方案、分析侦察结果、编写检测规则并生成专业报告。本文将带你用 Docker 离线包的方式,在完全断网、气隙隔离(air-gapped)的环境中完成部署,全程无需访问任何外部镜像仓库。

为什么需要 Docker 离线包:断网环境的典型痛点

如果你在内网安全项目、保密机房或生产隔离区工作,大概率遇到过这些麻烦:

  • ❌ 目标机器没有外网,git clone和curl | bash一键安装全部失效
  • ❌ Docker 拉取基础镜像需要访问远程 registry,断网时直接超时
  • ❌ 客户环境禁止安装任何工具,只允许导入审批过的离线包

而 pentest-ai-agents 的智能体本质是纯 Markdown 文件 + 辅助脚本,天然适合打包成极小的离线镜像。项目官方提供了专门的 Dockerfile,构建出的就是一个"离线安装包"——它不是服务,不运行任何攻击工具,只负责携带文件。

离线镜像里装了什么:50 个 AI 渗透测试智能体一览

打开 Dockerfile 可以看到,镜像被刻意做成了"最小打包",设计上有 3 个值得称道的细节:

设计点说明对断网部署的价值
基础镜像按摘要(digest)锁定debian:bookworm-slim@sha256:96e378d...,不可变联网机与断网机构建/导入行为完全一致,结果可复现
非 root 运行内置agents用户(UID 10001)安全基线友好,符合最小权限原则
只 COPY 需要的文件结合 .dockerignore 排除.git、日志、.env等敏感内容镜像体积极小,且不会把渗透发现数据库等敏感文件带进交付包

镜像内携带的核心内容:

  • agents/:50 个可路由智能体 + 作用域守卫_scope-guard.md
  • commands/:/recommend、/agents-for等斜杠命令
  • db/:渗透发现数据库脚本(含 db/doctor.sh 环境体检)
  • examples/:真实任务示例输出
  • install.sh:幂等的安装脚本,可随时重复执行

💡 查看 Dockerfile 末尾的CMD:容器默认启动时只会打印一段使用说明,再次印证它"只打包、不执行"的定位。

断网部署第 1 步:在联网机上构建并导出镜像

准备工作:一台可上网的机器(装好 Docker),以及一个能摆渡文件的介质(U 盘/内网文件服务器)。

1. 克隆仓库

git clone https://gitcode.com/gh_mirrors/pe/pentest-ai-agents cd pentest-ai-agents

2. 构建离线镜像

docker build -t pentest-ai-agents:offline .

由于基础镜像按摘要锁定,构建过程只需拉取这一个基础层,几分钟即可完成。

3. 导出为离线 tar 包

docker save -o pentest-ai-agents-offline.tar pentest-ai-agents:offline

生成的pentest-ai-agents-offline.tar就是你唯一需要带进断网环境的文件(仅几十 MB 量级)。

断网部署第 2 步:在断网机上导入镜像包

断网机只需本地装好 Docker(不需要配置任何 registry 访问):

docker load -i pentest-ai-agents-offline.tar docker images | grep pentest-ai-agents

看到pentest-ai-agents offline ...一行即导入成功。整个过程零网络请求。

断网部署第 3 步:容器内安装 AI 智能体

镜像内自带 install.sh。推荐把宿主机的~/.claude目录挂载进容器执行安装,让智能体直接落到 Claude Code 的全局目录:

docker run -it --rm \ -v "$HOME/.claude:/home/agents/.claude" \ pentest-ai-agents:offline \ ./install.sh --global

安装脚本是幂等的,重复执行相当于更新,非常适合断网环境里"改一次、导入一次"的节奏。

如果你更希望把智能体留在容器内长期运行(比如配合容器内的本地模型服务),直接交互式进入即可:

docker run -it --name pta pentest-ai-agents:offline sh cd /home/agents/pentest-ai-agents && ./install.sh --global

⚠️ 注意:离线包里只有"智能体定义"。真正驱动它们的模型端点仍需自备——可以是 Claude Code(ANTHROPIC_BASE_URL指向内网代理/网关),也可以是 Ollama 等本地模型。详见 docs/LOCAL-SETUP.md 的完整离线模型方案。

部署验证:3 条命令确认智能体就绪

1. 进入 Claude Code 询问路由

claude > What agents do you have available?

Claude 应能列出 pentest-ai 系列智能体。

2. 用一句话触发路由测试

> Plan a basic external penetration test for a small web application

看到它路由到engagement-planner并产出带 MITRE ATT&CK 映射的分阶段计划,说明安装成功。

3. 体检底层工具链(可选)

bash db/doctor.sh

按智能体分组列出本机缺哪些底层 CLI 工具(nmap、nuclei、ffuf 等),并给出安装提示——在断网机上这能帮你提前列出需要摆渡进场的工具清单。

更多排错技巧见 INSTALL.md 的 Troubleshooting 章节。

常见问题与排错清单

现象原因与处理
docker load报 manifest 错误摆渡过程中文件损坏,重新拷贝后校验文件大小/哈希
构建时拉取基础镜像失败检查联网机网络;基础镜像按 digest 锁定,可预先docker pull后docker save一并带入
智能体不加载确认.md文件位于~/.claude/agents/(全局)或.claude/agents/(项目级),目录名必须精确为agents
路由不到正确的智能体提示词尽量带领域关键词(如 "detection rule"、"pentest report"),或按名称直接点名智能体

总结:5 分钟掌握断网部署全流程

回顾一下完整链路,其实只有 5 条命令:

git clone(联网机)→ docker build → docker save → docker load(断网机)→ docker run ./install.sh --global
  • 📦 镜像小:纯 Markdown 打包,无运行时依赖
  • 🔁 可复现:digest 锁定的基础镜像 + 幂等安装脚本
  • 🛡️ 干净安全:非 root、无攻击工具、敏感文件被 .dockerignore 挡在构建上下文之外

对于保密项目和气隙环境,这套"联网机构建、断网机导入"的离线包模式,就是目前最稳妥的 pentest-ai-agents 交付方式。想深入定制智能体或接入本地模型,可以继续阅读 docs/AGENT-GUIDE.md 与 docs/LOCAL-SETUP.md。

【免费下载链接】pentest-ai-agentsTurn Claude Code into your offensive security research assistant. Specialized AI subagents for authorized penetration testing plan engagements, analyze recon, research exploits, build detections, audit STIGs, and write reports.项目地址: https://gitcode.com/gh_mirrors/pe/pentest-ai-agents

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询