跳到主要内容
PentAGI
部署

Worker node

在独立加固的服务器上运行 agent 容器,与 PentAGI 主主机分离。

在生产环境中,请勿在运行 PentAGI 的机器上执行不受信任的 tool。Worker node 通过受 TLS 保护的 Docker 端点托管 agents 容器,确保 agent 运行的命令永远不会触及主主机。

Main node running PentAGI and a separate worker node running the tool containers

Worker node

Main node

TLS, creates workers

TLS

PentAGI

Host Docker :2376 TLS

Docker-in-Docker :3376 TLS
authorization policy + seccomp

Worker containers

Nested containers

为什么需要 worker node

  • 隔离性。 Tool 容器运行在专用硬件上,并拥有独立的网络边界。
  • 受控的 Docker 访问。 需要使用 Docker 的 agents 通过授权策略与经过加固的 Docker-in-Docker 守护进程通信,而非直接访问宿主机守护进程。
  • 带外测试。 Worker node 上的专用端口范围支持 OOB 回调。

连接模式

  • 标准模式(推荐) — PentAGI 通过 TLS 连接到 worker node 的宿主机 Docker 以创建 worker 容器;worker 则通过其 TLS 端点访问 Docker-in-Docker。将 DOCKER_INSIDE=true 与 DOCKER_INSIDE_HOST、DOCKER_INSIDE_TLS_VERIFY 和 DOCKER_INSIDE_CERT_PATH 一起设置,并将 DOCKER_SOCKET 留空:.env template 的 /var/run/docker.sock 还会将 worker node 的宿主机 Docker socket 挂载到每个 sandbox 中。如果没有 DOCKER_INSIDE_HOST,agent 将无法获得 Docker 访问权限。
  • 直连模式 — PentAGI 直接与 Docker-in-Docker 通信;此时策略将拒绝宿主机绑定挂载,因此必须禁用 agents 的 Docker 访问权限。

配置指南

完整的操作流程——包括两个守护进程的 TLS 证书、加固的 Docker-in-Docker 配置、策略更新及验证——请参阅代码仓库中的 worker node 指南。

最后更新于