概述

OCSP stapling 是一个旨在提高 SSL 协商性能并保持访问者隐私的 TLS/SSL 扩展。

关于 OCSP

OCSP(在线证书状态协议)是一种用于检查 SSL 证书是否被吊销的协议。它被创建作为 CRL 的替代方案,以减少 SSL 协商时间。使用 CRL(证书吊销列表),浏览器会下载一份吊销证书序列号的列表并验证当前证书,这会增加 SSL 协商时间。在 OCSP 中,浏览器发送请求到 OCSP URL 并接收包含证书有效性状态的响应。

关于 OCSP stapling

OCSP 有两个主要问题:隐私和 CA 服务器的重负载。

由于 OCSP 需要浏览器联系 CA 来确认证书的有效性,这会损害隐私。CA 知道正在访问的网站以及谁在访问。

如果一个 HTTPS 网站有大量访问者,CA 的 OCSP 服务器必须处理所有访问者发出的 OCSP 请求。

当实现了 OCSP stapling 时,证书持有者(即 Web 服务器)自己查询 OCSP 服务器并缓存响应。这个响应通过 TLS/SSL 握手与 证书状态请求 扩展响应 “装订” 在一起。因此,CA 的服务器不再承担请求的负担,浏览器也不再需要向任何第三方披露用户的浏览习惯。

配置

修改域名 conf 文件,在 server {} 块证书文件引用位置的末尾加入以下代码:

ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate /path/to/your/chain.crt;
resolver 8.8.8.8 8.8.4.4 1.1.1.1 223.5.5.5 valid=30s ipv6=off;
resolver_timeout 10s;

参数解释

ssl_stapling on;

  • 启用 OCSP Stapling,允许服务器在 SSL/TLS 握手过程中向客户端提供证书的有效性信息,从而提高安全性和性能。

ssl_stapling_verify on;

  • 启用 OCSP Stapling 验证,确保 NGINX 验证 OCSP 响应的有效性,确保响应是来自受信任的 OCSP 服务器。

ssl_trusted_certificate /path/to/your/chain.crt;

  • 指定信任的证书链文件(通常包含中间证书),用于验证 OCSP 响应的有效性。确保 NGINX 可以信任 OCSP 响应中的证书。

resolver 8.8.8.8 8.8.4.4 1.1.1.1 223.5.5.5 valid=30s ipv6=off;

  • 指定 DNS 解析器的 IP 地址(如 Google 和 Cloudflare 的公共 DNS),用于解析 OCSP 服务器的域名。valid=30s 表示缓存解析结果 30 秒,ipv6=off 则禁用 IPv6。

resolver_timeout 10s;

  • 设置 DNS 解析超时时间为 10 秒。如果在此时间内未能解析域名,NGINX 将停止等待并处理相应的错误。

验证

使用 OpenSSL 命令:你可以使用 OpenSSL 的 s_client 命令来检查 OCSP Stapling:

openssl s_client -connect yourdomain.com:443 -status

查找输出中的 OCSP Response 部分,如果它包含 successful,表示 OCSP Stapling 正常工作。

如下为未生效

OCSP response: no response sent

如下为已生效

OCSP response:
OCSP Response Data:
    OCSP Response Status: successful (0x0)
    Response Type: Basic OCSP Response

查看 OCSP 状态:在输出中,检查 OCSP Response 的状态是否为 good,这表明证书是有效的。

输出示例:

OCSP Response Data:
    OCSP Response Status: successful (0x0)
    ...
    producedAt: Sep 22 12:00:00 2023 GMT
    nextUpdate: Sep 29 12:00:00 2023 GMT
    ...
    Cert Status: good

通过在线网站:打开网站(https://myssl.com)输入网址点击【立即检测】,等待检测完成后,在 “证书信息” 栏目查看 “OCSP 装订状态” 的参考值。

如下表示未生效

OCSP 装订状态 | 不支持

如下表示已生效

OCSP 装订状态 | 正常

友情提示:本站所有文章,如无特殊说明或标注,均为何星星原创发布。与此同时,趋于近年来本站的文章内容频繁被他站盗用与机器采集,现已全局禁用网站文字内容操作,了解详情或转载文章请 点此 继续!
分类: 系统运维

0 条评论

发表回复

Avatar placeholder

您的电子邮箱地址不会被公开。 必填项已用 * 标注