核心是确保企业ca可靠生成并分发crl,同时域内客户端能自动获取验证;需配置ad/http双路径冗余发布、合理设置crl发布间隔与有效期、启用增量crl,并通过certutil等工具定期维护验证。

在域环境中配置和管理证书吊销列表(CRL)发布,核心是确保企业证书颁发机构(CA)能可靠、及时地生成并分发 CRL,同时让域内客户端能自动获取并验证。这不是单纯“发布一次就完事”的操作,而是涉及策略设置、存储位置、权限控制和客户端行为协同的一整套机制。
配置 CRL 发布位置与分发点
CRL 必须发布到客户端可访问的路径,且该路径需被写入证书的 CRL 分发点(CDP)扩展中。常见做法是使用 Active Directory 和 HTTP 两种方式:
-
AD 发布:默认启用,CRL 会自动发布到
ldap://<domaindn>/CN=<caname>,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=domain,DC=com</caname></domaindn>。确保域控制器运行正常,且 CA 服务器有足够权限写入配置分区。 -
HTTP 发布:更推荐用于跨网络或 Internet 客户端。在 CA 控制台右键 → “属性” → “扩展”选项卡 → 编辑“CRL 分发点”,添加类似
http://pki.contoso.com/crl/contoso-root-ca.crl的 URL。对应 Web 服务器(如 IIS)需启用静态内容服务,并将 CRL 文件放在指定虚拟目录下,设置适当 MIME 类型(application/pkix-crl)。 - 无论哪种方式,都建议至少配置两个冗余路径(例如 AD + HTTP),避免单点故障导致吊销检查失败。
设置 CRL 更新与生存期参数
在 CA 控制台中,右键 CA 名称 → “属性” → “常规”选项卡,可调整关键时间参数:
- CRL 发布间隔:决定多久生成一次新 CRL(例如 8 小时)。太长会延迟吊销生效;太短增加服务器和网络负载。
- CRL 有效期(生存期):必须大于发布间隔,且建议留出缓冲(例如发布间隔设为 8 小时,有效期设为 24 小时)。客户端会缓存 CRL 直到过期,过期后才重新下载。
- 增量 CRL 支持:勾选“发布增量 CRL”后,CA 会生成较小的增量文件(.delta.crl),仅包含新增吊销项,适合大型环境。但客户端必须先拥有最新基础 CRL 才能使用增量版。
授权客户端自动下载与验证 CRL
域内客户端无需手动导入 CRL,系统会按需自动获取:
- 证书验证时(如登录、EAP-TLS 连接、HTTPS 访问),Windows 自动解析证书中的 CDP 地址,并尝试按顺序访问各路径。
- 若使用 HTTP 发布,确保域内防火墙允许客户端访问 CRL Web 服务器的 80 或 443 端口;若用 AD 发布,确保客户端能查询全局编录(GC)。
- 可通过组策略强化或放宽行为:路径
计算机配置 → 管理模板 → 系统 → Internet 通信管理 → Internet 通信设置下的“关闭 Windows 更新自动更新”不相关,真正相关的是证书验证策略,例如禁用吊销检查(不推荐)或配置超时行为,但通常保持默认即可。
日常维护与故障排查要点
定期检查可预防身份验证中断:
- 用
certutil -getcrl命令在 CA 服务器上手动触发 CRL 发布,并确认文件生成在预期位置。 - 用
certutil -urlcache crl查看客户端是否成功缓存了 CRL,用certutil -verify -urlfetch <certfile></certfile>模拟完整验证流程,观察是否报错“无法检索 CRL”或“AADSTS2205015”等签名错误。 - 检查 IIS 日志或域控安全日志,确认 CRL 文件被频繁请求但返回 404 或 403,说明路径配置错误或权限不足。
- 吊销证书后,务必执行“发布新 CRL”操作(右键“吊销的证书”→“所有任务”→“发布”),否则吊销不会生效。











