- A+
所属分类:随笔杂谈
OCSP Stapling功能是由CDN服务器查询OCSP(Online Certificate Status Protocol)信息,可以降低客户端验证请求延迟,减少等待查询结果的响应时间。
OCSP Stapling功能将查询OCSP信息的工作由CDN服务器完成。CDN通过低频次查询,将查询结果缓存到服务器中。当客户端向服务器发起TLS握手请求时,CDN服务器将证书的OCSP信息和证书链一起发送到客户端。这样可以避免客户端验证会产生的阻塞问题。由于OCSP信息是无法伪造的,因此这一过程不会产生额外的安全问题。
Nginx开启OCSP装订
以使用acme.sh申请的Let's Encrypt证书为例,证书会存放在~/.acme.sh/example.com文件夹下,下面有这两个文件:
fullchain.cer example.com.key
编辑Nginx配置文件
ssl_certificate /[用户名]/.acme.sh/example.com/fullchain.cer; #证书路径 ssl_certificate_key /[用户名]/.acme.sh/example.com/example.com.key; #私钥路径 ssl_stapling on; #开启OCSP resolver 8.8.8.8 8.8.4.4 223.5.5.5 valid=300s; #不加这个可能就会开启失败 ssl_stapling_verify on; #开启OCSP验证 ssl_trusted_certificate /[用户名]/.acme.sh/xmgspace.me/fullchain.cer; #证书链路径
一般情况,重启nginx, 到现在为止就成功结束了。
检测是否成功
可以用这个来测是否开启成功,把example.com换成你自己的域名。
openssl s_client -connect example.com:443 -servername example.com -status -tlsextdebug < /dev/null 2>&1 | grep -i "OCSP response"
1.成功返回的结果
2.失败返回的结果
3.我遇到的情况
刚开始一直OCSP response: no response sent
后来搜原因好像是letsencrypt的OCSP地址被污染了。
所以nginx配置文件中加了resolver 8.8.8.8 8.8.4.4 223.5.5.5 valid=300s;
4.其他检测方法
https://myssl.com/
https://www.ssllabs.com/
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏