直接用 ssl_stapling_file 指向本地 DER 格式 OCSP 响应文件可跳过网络查询,前提需满足三项硬性条件:DER 编码、对应域名证书且签名可被 CA 链验证、Next Update 未过期;配置须同时启用 ssl_stapling、ssl_stapling_verify、指定 ssl_stapling_file 和 ssl_trusted_certificate;需定期更新响应文件并重载 Nginx。
直接用
指向本地 DER 格式 OCSP 响应文件,就能跳过网络查询、DNS 解析和 CA 服务器访问全过程,彻底规避公网延迟。关键不在于“关闭网络”,而在于让 Nginx 完全信任并复用一个已验证有效的响应。
前提:准备合法可用的 OCSP 响应文件
该文件必须满足三项硬性条件,缺一不可:
格式为标准 DER 编码(不是 PEM),可用
确认输出含
data
或
OCSP Response
;
响应对应当前
中的域名证书,且签名能被
中的 CA 链验证;
响应内含有效时间窗口(
在未来),Nginx 不会自动刷新,过期后需人工替换。
生成步骤(在有网环境一次性完成)
推荐在跳板机或开发机上执行,确保环境可连通 CA 的 OCSP 地址:
从证书中提取 OCSP URL:
;
确认
所指文件含完整中间 CA + 根 CA(顺序:中间在前,根在后);
运行获取命令(注意加
防 HTTP/1.1 兼容问题):
;
立即验证:
,确认输出含
Response verify OK
且
Next Update
合理。
Nginx 配置要点(离线专用)
以下四行必须同时存在,并放在
块 HTTPS 监听内:
—— 启用 stapling 功能,否则不发送响应;
—— 强制校验本地文件签名与有效期,防止伪造或过期数据;
—— 显式指定 DER 文件路径;
—— 提供验证该 OCSP 响应所需的可信 CA 链(不能是
文件)。
无需配置
,也不建议开启
自动模式,避免因网络不可达触发降级逻辑。
维护提醒
OCSP 响应不是一劳永逸的:
查看有效期:
;
建议用
定期更新(如每 4 小时),但更新频率不能超过
时间;
更新后 reload Nginx:
,无需重启。
ssl_stapling_filefile example.ocspssl_certificatessl_trusted_certificateNext Updateopenssl x509 -in fullchain.pem -noout -text | grep -A1 "OCSP"ssl_trusted_certificate-header Hostopenssl ocsp -issuer intermediate.crt -cert example.com.crt -url http://ocsp.int-x3.letsencrypt.org -header "Host" "ocsp.int-x3.letsencrypt.org" -respout /tmp/example.ocspopenssl ocsp -respin /tmp/example.ocsp -CAfile full-chain-trusted.pem -textserverssl_stapling on;ssl_stapling_verify on;ssl_stapling_file /var/lib/nginx/ocsp/example.ocsp;ssl_trusted_certificate /etc/nginx/ssl/internal-ca-trust.pem;ssl_certificateresolverssl_staplingopenssl ocsp -respin example.ocsp -text | grep "Next Update"cronNext Updatenginx -t && nginx -s reload