Nginx启用OCSP Stapling配置
如果没记错的话,4月初开始发现Let's Encrypt
的ocsp
域名被墙(GFW
牛逼~),导致站点加载速度贼慢贼慢,详情可见:https://www.songhaifeng.com/zwxh/189.html
但目前只是通过切换证书来解决而已,实际上还可以通过配置OCSP Stapling
来解决。
在线证书状态协议(Online Certificate Status Protocol),简称 OCSP,是一个用于获取 X.509 数字证书撤销状态的网际协议,在 RFC 6960 中定义。OCSP 用于检验证书合法性,查询服务一般由证书所属 CA 提供。OCSP 查询的本质,是一次完整的 HTTP 请求加响应的过程,这中间涵括的 DNS 查询、建立 TCP 连接、Web 端工作等步骤,都将耗费更多时间,使得建立 TLS 花费更多时长。
而这时,OCSP Stapling 出现了。经由 OCSP Stapling(OCSP 封套),Web 端将主动获取 OCSP 查询结果,并随证书一起发送给客户端,以此让客户端跳过自己去寻求验证的过程,提高 TLS 握手效率。
生成OCSP Stapling文件
需要准备两份证书:
根证书(root.pem) + 中间证书(intermediate.pem)
以下以Let's Encrypt
证书为例:
根证书:
DST Root CA X3
https://ssl-tools.net/certificates/dac9024f54d8f6df94935fb1732638ca6ad77c13.pem
ISRG Root X1
https://letsencrypt.org/certs/isrgrootx1.pem
中间证书:
Let's Encrypt Authority X1
https://letsencrypt.org/certs/lets-encrypt-x1-cross-signed.pem
Let's Encrypt Authority X2
https://letsencrypt.org/certs/lets-encrypt-x2-cross-signed.pem
Let's Encrypt Authority X3
https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem
Let's Encrypt Authority X4
https://letsencrypt.org/certs/lets-encrypt-x4-cross-signed.pem
这里以DST Root CA X3 根证书
+ Let's Encrypt Authority X3 中间证书
为例(现在 Let's Encrypt 签发的证书基本都是这样的组合)
// 下载根证书和中间证书 wget -O root.pem https://ssl-tools.net/certificates/dac9024f54d8f6df94935fb1732638ca6ad77c13.pem wget -O intermediate.pem https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem // 生成 OCSP Stapling 验证文件注意,中间证书在上、根证书在下 cat intermediate.pem > chained.pem cat root.pem >> chained.pem
这样,生成的 chained.pem
就是所需的 OCSP Stapling 验证文件。
开启OCSP Stapling
仅以nginx为例,在配置文件的server块中添加如下配置:
ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate /path/to/certs/chained.pem; 保存后重启nginx即可
验证 OCSP Stapling 是否开启
使用 SSLLABS 自动验证
访问 https://www.ssllabs.com/ssltest/ ,输入域名,稍等片刻后,如果发现结果中出现如下内容则证明已成功开启 OCSP Stapling :
手动验证
echo QUIT | openssl s_client -connect 域名:443 -status 2> /dev/null | grep -A 17 'OCSP response:'
结果为下图内容,则开启成功:
注意事项
看图片最后一行可以知道,该验证一个月需要更新一次,继续以上操作即可,或者编写shell脚本进行定时更新即可。
建议别在背景开这个动画,风扇一下子就加快了,我只想静静地看文章