1. 课程导入

在企业网络中,证书常被当作“装完就忘”的附属品:Web 服务器配好 HTTPS 后,证书文件静静躺在 /etc/ssl/certs 或 Windows 证书存储里,直到某天浏览器弹出“证书已过期”,业务中断,运维才匆忙翻找续期脚本。这类事故的根源不是加密算法不会用,而是证书从未被纳入资产管理。本课程要解决的核心问题正是:把证书从“配置文件里的一个路径”提升为“可发现、可清点、可治理的资产对象”。

先厘清关系。企业资产治理通常覆盖主机、IP、域名、应用、账号、数据等对象,而证书是横跨这些对象的“信任凭证”:它绑定域名(或 IP、邮箱、设备标识),部署在服务器、负载均衡、CDN、API 网关、代码仓库、容器集群甚至个人终端上,具有签发者、有效期、密钥算法、SAN 列表、吊销状态等属性。证书的独特之处在于生命周期刚性——到期即失效,没有“宽限期”可谈;同时它又高度分散——同一张证书可能被复制到多台机器,同一域名可能同时存在多张不同来源的证书。因此,证书治理不能只靠“到期前发邮件提醒”,而必须建立在“先发现、再清点、后治理”的数据基础上。发现是入口:不知道企业里有多少张证书、分别在哪里、由谁签发、何时到期,后续的续期自动化、密钥轮换、合规审计都无从谈起。

一句话概括本课程主线:以“发现”为起点,建立证书资产台账,再围绕台账做生命周期治理与风险收敛。

本课程的目标分三层。第一层是认知层:理解 X.509 证书结构、信任链、TLS 握手过程中证书的角色,以及企业内常见的证书类型(公网 DV/OV/EV、内部 CA 签发证书、自签名证书、客户端证书、代码签名证书等)。第二层是技能层:能够使用扫描、日志分析、CT 日志查询、端点采集等手段发现证书,能够解析证书字段并归一到资产台账,能够识别过期、弱算法、自签名、私钥泄露、域名不匹配等风险。第三层是治理层:能够设计证书生命周期流程(申请、签发、部署、监控、续期、吊销、归档),并把流程落到工具链与责任矩阵上。

学习路径按“由外到内、由发现到治理”推进,共 30 章,可划分为四个阶段:

  • 基础与发现(第 1~8 章):证书与资产治理关系、X.509 结构、TLS 握手与信任链、发现手段总览、网络扫描与端口探测、CT 日志与被动发现、端点与代码仓库采集、发现结果归一化。
  • 清点与台账(第 9~15 章):证书指纹与去重、资产关联模型、台账字段设计、CMDB 对接、多源数据合并、台账质量校验、可视化与报表。
  • 风险与治理(第 16~24 章):过期与临期风险、弱密钥与弱签名算法、自签名与私链风险、域名不匹配与 SAN 治理、私钥泄露排查、吊销与 OCSP/CRL、自动化续期、密钥轮换、合规审计。
  • 实战与复盘(第 25~30 章):综合实战项目、工具链集成、故障排查案例、治理成熟度评估、运营指标、课程复盘。

下面这张图给出本课程的整体结构:左侧是“发现输入”,中间是“台账与治理”,右侧是“输出与反馈”。它同时说明了本课程各阶段之间的数据流关系,而不是简单的章节顺序。

企业证书发现与资产治理 · 课程结构 发现输入(第 4~8 章) 网络扫描 / 端口探测 443 / 8443 / 自定义端口 CT 日志 / 被动发现 crt.sh、证书透明度 端点 / 代码仓库采集 证书存储、K8s Secret 日志 / 流量旁路 TLS 握手记录 人工申报 / 工单 补充内部 CA 证书 输出:原始证书 + 来源位置 台账与治理(第 9~24 章) 证书指纹去重与归一化 SHA-256 指纹 · 序列号 · SAN 列表 证书资产台账 域名 · 部署位置 · 签发者 · 有效期 · 责任人 风险识别 过期 · 弱算法 · 自签名 · 域名不匹配 · 私钥泄露 生命周期流程 申请 → 签发 → 部署 → 监控 → 续期 → 吊销 自动化与合规 ACME · 密钥轮换 · 审计证据 输出与反馈(第 25~30 章) 治理看板 证书总数 · 临期数 · 风险分布 告警与工单 到期前 30/14/7 天 审计报告 合规证据 · 变更记录 成熟度评估 发现覆盖率 · 自动化率 复盘与优化 误报收敛 · 流程改进 反馈:补充发现源、修正台账 原始数据 治理结果 反馈回路:台账缺口驱动新一轮发现

课程设置一个贯穿始终的实战项目:“某中型企业证书资产清点与治理”。假设该企业有 3 个公网域名、约 40 台对外服务主机、1 套内部 CA、若干 Kubernetes 集群。项目分四个里程碑:

  1. M1 发现:对 3 个域名做 CT 日志查询与端口扫描,对 40 台主机做 443/8443 探测,对 K8s 集群采集 Ingress 与 Secret 中的证书,汇总为原始证书列表。
  2. M2 清点:按 SHA-256 指纹去重,解析每张证书的 Subject、Issuer、NotBefore/NotAfter、SAN、签名算法、公钥算法与长度,关联到域名与部署位置,形成台账。
  3. M3 风险:标记 30 天内到期、RSA 小于 2048 位、SHA-1 签名、自签名、SAN 与域名不匹配、私钥出现在代码仓库等风险项,输出风险清单。
  4. M4 治理:对高风险证书制定续期或替换计划,接入 ACME 自动化续期,建立到期前 30/14/7 天三级告警,输出治理前后对比报告。
学习建议:每章结束后,把该章方法套用到自己的实验环境或脱敏数据上。证书治理是“数据密集型”工作,只看不练很难形成判断力。建议准备一台 Linux 虚拟机、一个可注册的测试域名,以及一个本地 CA(如 OpenSSL 或 step-ca)作为练习环境。

需要提醒的是,证书发现与治理涉及企业真实资产信息,实操中必须遵守授权边界:扫描前取得书面授权,CT 日志查询只使用公开数据,端点采集避免触碰个人隐私数据,私钥内容不得明文落库。本课程所有示例参数均为教学假设,实际执行时请以所在企业的安全规范为准。