
Infisical 如何发现内网现有服务上的证书并建立证书清单【免费下载链接】infisicalInfisical is the open-source platform for secrets, certificates, and privileged access management.项目地址: https://gitcode.com/GitHub_Trending/in/infisical当你接手一套存量基础设施时往往不知道内网各服务上到底部署了哪些 TLS 证书、哪些即将过期。Infisical 的 Certificate Discovery 功能通过扫描基础设施来自动发现这些证书并把结果组织成installations安装位置帮助你建立可跟踪、可管理的证书清单。本文以 Network Discovery网络发现为路径介绍如何创建一个针对内网 IP 段/域名的扫描任务、触发扫描、查看结果以及把发现的证书纳入 Infisical 清单。工作原理扫描结果如何变成证书清单根据 Certificate Discovery 概述Discovery 任务扫描基础设施后结果按installations组织——每个 installation 对应证书被发现的一个唯一位置例如特定的主机名 端口组合。同一个位置在多次扫描中的证书变化会被持续跟踪便于观察时间维度上的变化。发现的证书会按指纹DER 编码证书的 SHA-256 哈希与组织内已有证书清单做匹配。如果匹配上installation 会链接到对应证书形成证书部署在哪里的统一视图。如果某次扫描在某位置发现了不同的证书installation 会更新为新证书旧的关联保留在扫描历史中。如果发现的证书与任何已有证书都不匹配可以将其导入清单与通过 Infisical 签发的证书一起跟踪和管理。目前支持的发现类型是 Network Discovery通过 TLS 扫描网络端点云厂商、文件系统等发现类型文档注明将在后续版本中加入。前提Infisical 如何触达内网扫描内网私网 IP 段时Infisical 需要能访问这些端点。文档给出两条路径按部署形态二选一Infisical Gateway使用部署在你内网中的 Gateway 代理流量可触达互联网无法直接访问的私有网络。这是文档推荐的私有网络方案。自托管实例的环境变量如果是自托管 Infisical可以在实例上设置ALLOW_INTERNAL_IP_CONNECTIONS为true默认为false让 Discovery 任务走直连出口直接扫描私有网络无需 Gateway。设置该环境变量前需要注意文档中的警告它会放宽 SSRF 防护允许私网 IP 的同时还会禁用该直连路径上的 DNS-rebinding pin 保护校验与连接可能解析到不同 IP。文档建议仅在信任能配置这些集成的用户时使用并尽量用更窄的作用范围控制。如果只需要私有网络访问能力优先考虑 Gateway它在网络内部通过 agent 隧道转发流量不需要在 Infisical 实例上开放任何内网 IP 段。创建 Network Discovery 任务UI 主路径按 Network Discovery 文档 的 UI 操作在Certificate Manager中进入Discovery点击Add Job。填写任务详情并点击CreateName任务的 slug 风格名称例如prod-tls-scanDescription可选描述Targets要扫描的域名、IP 地址或 CIDR 段例如example.com、192.168.1.1、10.0.0.0/24。至少需要一个 target域名或 IPPorts要扫描 TLS 证书的端口。不指定时默认为常见 TLS 端口Gateway可选用于扫描私有网络的 Infisical GatewayAuto Scan启用后按可配置间隔自动周期扫描。点击Scan Now手动触发一次扫描或在启用 Auto Scan 时等待下一次自动扫描。触发与验证扫描扫描完成后在任务详情中查看三类结果Installations发现证书的唯一位置列表这就是你的证书部署清单的主体Certificates证书详情包括 common name、颁发者和到期时间Scan History所有扫描的状态与时间戳日志。判断扫描是否按预期工作就看 Installations 中是否出现你预期内的主机/端口位置以及 Certificates 中列出的是否为真实在服务上提供的证书。任务详情页、Discovery 页的Installations标签页、以及具体证书的详情页显示该证书部署在哪些位置都可以查看 installations。通过 API 创建与触发可选分支如果更习惯脚本化操作Network 文档给出了 API 方式。创建任务时type为network-tlstargetConfig包含ipRanges、domains、ports字段文档示例请求示例结果来自文档原文access-token需替换为你的访问令牌gatewayId与目标值按实际环境替换curl --request POST \ --url https://app.infisical.com/api/v1/pki/discovery \ --header Authorization: Bearer access-token \ --header Content-Type: application/json \ --data { name: prod-tls-scan, description: Scan production network for TLS certificates, type: network-tls, gatewayId: 550e8400-e29b-41d4-a716-446655440000, isAutoScanEnabled: true, scanIntervalInDays: 1, targetConfig: { ipRanges: [10.0.0.0/24, 192.168.1.1], domains: [example.com], ports: 443, 8443 } }创建后通过 Trigger Scan 端点触发一次扫描curl --request POST \ --url https://app.infisical.com/api/v1/pki/discovery/discoveryId/scan \ --header Authorization: Bearer access-token注意API 参考页 Create 与 Trigger scan 中列出的 OpenAPI 路径为POST /api/v1/cert-manager/discovery-jobs和POST /api/v1/cert-manager/discovery-jobs/{discoveryId}/scan与上文示例中的/api/v1/pki/discovery前缀不完全一致两处文档存在这一差异实际调用时以你环境 API 的实际响应为准核对。发现证书如何进入清单扫描结果转化为清单的逻辑来自 Discovery 概述文档匹配发现的证书按指纹与组织内已有证书比对命中则 installation 链接到该证书无需重复入库导入未命中的证书可以导入清单从此与 Infisical 签发的证书一样被跟踪和管理持续跟踪后续扫描在同一位置发现证书变化时installation 更新、历史保留因此清单反映的是当前状态而不是某一次扫描的快照。限制Network discovery 任务的硬限制来自 Network 文档单个 IP 数量上限256域名数量上限20端口数量上限5CIDR 前缀最小/24256 个主机规划 IP 段和端口列表时需要满足这些约束超出的范围要拆分为多个 discovery 任务。下一步清单建立之后文档给出的延伸方向是为发现证书配置到期提醒Alerting见 Alerting以及将证书推送到云目的地Certificate Syncs见 Certificate Syncs。【免费下载链接】infisicalInfisical is the open-source platform for secrets, certificates, and privileged access management.项目地址: https://gitcode.com/GitHub_Trending/in/infisical创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考