Skip to content

扫描节点池管理

扫描节点负责执行扫描任务。本页介绍如何在控制台对节点池进行日常运维与状态监控。

🚀 探针的部署与集群水平扩展

如果您想在新机器上部署探针、运行多个节点,或查询不同类型节点的硬件配置建议,请参阅部署指南:分布式部署


节点池概览与实时心跳

在左侧导航栏进入「扫描节点」->「节点池管理」,系统将呈现全局所有已注册探针的运行卡片与统计报表:

字段栏目作用解释状态示例
节点名称客户端通过 TESTNET_NODE_NAME 环境变量设定的业务别名node-beijing-01
节点 ID节点注册后自动生成的唯一标识client_8f92a0e1
工作状态实时反映节点是否能正常接收任务🟢 在线 / 🔴 离线 / ⚫ 禁用
最后心跳上一次心跳的时间12 秒前
并发任务数当前正在执行的任务数3 / 5
系统信息节点的操作系统、内核与内存信息Linux x86_64 / 16GB

节点状态说明

状态图标说明
在线🟢节点正常运行,可接收任务
离线🔴节点超过 5 分钟未上报心跳
禁用管理员手动禁用,不接收新任务

节点管理操作

启用/禁用节点

  • 禁用后,节点不再接收新任务(已执行中的任务继续完成)
  • 适用场景:节点维护期间临时禁用,避免任务分配到不可用节点

操作步骤:

  1. 找到目标节点
  2. 点击操作列的「禁用」/「启用」按钮
  3. 确认操作

查看节点详情

点击节点名称或「详情」按钮可查看:

  • 系统配置(CPU、内存、磁盘)
  • 运行统计(总任务数、成功/失败率)
  • 已执行任务列表

删除节点

离线节点可删除(不影响已执行的任务记录):

  1. 确保节点已停止(状态为离线)
  2. 点击「删除」按钮
  3. 确认删除

TIP

删除后如需重新使用该节点,客户端重新启动时会自动重新注册为新节点。


节点执行能力

执行方式所需条件说明
Docker挂载 Docker Socket执行容器化工具(如 Subfinder、Nuclei)
Shell安装对应二进制执行本地命令行工具(PROCESS 类型)
HTTP网络可达发送 HTTP 请求
DNS网络可达DNS 查询解析
TCP网络可达TCP 端口探测

客户端环境变量参考

客户端节点支持通过 TESTNET_ 前缀的环境变量覆盖 config.yaml 配置:

环境变量类型说明
TESTNET_SERVER_URLstring服务端地址(如 http://host:8081https://host:3100
TESTNET_SERVER_TLS_ENABLEDbool是否启用 TLS(true/1
TESTNET_SERVER_TLS_INSECURE_SKIP_VERIFYbool是否跳过 TLS 证书校验(自签名证书时设为 true
TESTNET_CLIENT_SECRETstring节点连接密码(从服务端 .env 中获取)
TESTNET_NODE_NAMEstring节点名称
TESTNET_LOG_LEVELstring日志级别(debug/info/warn/error
TESTNET_MAX_CONCURRENTint最大并发任务数(默认 10)
TESTNET_POLL_TIMEOUTduration长轮询超时时间(如 30s
TESTNET_POLL_INTERVALduration长轮询间隔(如 5s
TESTNET_HEARTBEAT_INTERVALduration心跳上报间隔(如 15s
TESTNET_DOCKER_ENABLEDbool是否启用 Docker 执行器(true/1
TESTNET_DOCKER_FALLBACK_MIRRORSstring备用 Docker 镜像源列表(逗号分隔,如 docker.m.daocloud.io,huecker.io
TESTNET_SERVER_TIMEOUTduration服务端请求超时(如 30s
TESTNET_WORK_DIRstring任务工作目录
TESTNET_CACHE_DIRstring缓存目录
TESTNET_ALLOW_PRIVILEGEDbool是否允许容器特权执行(默认 false,高危)
TESTNET_ALLOW_SSRFbool是否允许 SSRF 探测内网(默认 false,高危)
TESTNET_ALLOWED_VOLUME_PATHSstring允许挂载的目录列表(逗号分隔,如 /tmp/,/opt/testnet/

WARNING

TESTNET_ALLOW_PRIVILEGEDTESTNET_ALLOW_SSRF 涉及安全风险,仅在内网受控环境中调试时开启,生产环境务必保持默认 false。详见 探针沙箱与安全机制


相关文档

基于 MIT 协议发布