吊销与 HSTS
证书被吊销后如何让校验方知道?HTTP 如何强制走 HTTPS?这两个"运行时信任"问题归这一组。
两条命令
| 命令 | 作用 | 在线/离线 |
|---|---|---|
check-revocation <target> | OCSP + CRL 双查吊销状态 | 域名在线 / 文件仅 CRL |
check-hsts <domain> | HSTS 状态与策略 | 在线 |
吊销查询:OCSP + CRL
bash
cert-skills check-revocation example.com同时查两种机制,取综合判定:
- OCSP:实时,向 CA 的 OCSP responder 查单张证状态。响应
Good/Revoked/Unknown。 - CRL:下载 CA 的吊销列表,按序列号比对。离线可用,但有发布延迟。
文件模式只能走 CRL
文件模式下只能走 CRL(OCSP 需要证书链里的 AIA URL 指向 responder,且通常要 issuer 证书)。所以 check-revocation ./cert.pem 只跑 CRL 部分——要查 OCSP 必须用在线域名模式。
OCSP Stapling 的关系
裸 OCSP 暴露隐私(CA 知道你在查谁)且有可用性依赖。解决方案是 OCSP Stapling——服务器预取 OCSP 响应,握手时附带给客户端:
带 Must-Staple 扩展的证书必须走这套,否则客户端硬失败(见 合规检查)。
HSTS
bash
cert-skills check-hsts example.comHSTS(HTTP Strict Transport Security)通过响应头强制浏览器后续一律走 HTTPS:
Strict-Transport-Security: max-age=63072000; includeSubDomains; preload三个指令:
| 指令 | 含义 |
|---|---|
max-age | 强制 HTTPS 的有效期(秒),建议 ≥6 个月 |
includeSubDomains | 覆盖所有子域 |
preload | 允许进入浏览器内置的 HSTS 预加载列表 |
评分影响
analyze 评分里缺 HSTS 是 Medium (−10) 项。一个证书本身没问题但站点没配 HSTS 的网站,会被扣到 Medium 区间。
与其他能力的关系
- 吊销状态是
analyze评分的输入之一(含被吊销 CA = Critical)。 - HSTS 是
analyze的协议层检查项。 - CRL 的生成与管理见 CRL 吊销列表。