OCSP 则是一个在线查询接口,浏览器可以实时查询单个证书的合法性。在每个证书的详细信息中,都可以找到对应颁发机构的 CRL 和 OCSP 地址。
OCSP 的问题在于,某些客户端会在 TLS 握手阶段进一步协商时,实时查询 OCSP 接口,并在获得结果前阻塞后续流程,这对性能影响很大。而 OCSP Stapling
(OCSP 封套),是指 服务端在证书链中包含颁发机构对证书的 OCSP 查询结果,从而让浏览器跳过自己去验证的过程
。服务端有更快的网络,获取 OCSP 响应更容易,也可以将 OCSP 响应缓存起来。OCSP 响应本身经过了数字签名,无法伪造,所以 OCSP Stapling 技术既提高了握手效率,也不会影响安全性。
server { # use Google's DNS resolver 8.8.4.4 8.8.8.8 valid=300s; resolver_timeout 10s; ssl_stapling on; ssl_stapling_verify on; ## verify chain of trust of OCSP response using Root CA and Intermediate certs ssl_trusted_certificate /usr/local/nginx/ssl/nginx.cn/ca.cer; }
ssl_trusted_certificate 选项应指向证书颁发结构的中间证书+根证书,而不是购买的ssl证书。否则会报:"ssl_stapling" ignored, no OCSP responder URL in the certificate。
其它问题:报nginx: [warn] "ssl_stapling" ignored, issuer certificate not found for certificate "default.csr" 错误。
打开两个 on 的同时要带着 ssl_trusted_certificate 配置。
我来评几句
登录后评论已发表评论数()