推荐答案
ssl_stapling_verify 指令用于启用或禁用对 OCSP(Online Certificate Status Protocol)响应的验证。当启用时,Nginx 会验证从 OCSP 服务器返回的响应是否有效,以确保客户端能够获取到最新的证书状态信息。
本题详细解读
1. 指令作用
ssl_stapling_verify 指令的主要作用是控制 Nginx 是否验证从 OCSP 服务器返回的响应。OCSP 是一种用于检查证书状态的协议,客户端可以通过它来确认服务器证书是否已被吊销。
- 启用验证:当
ssl_stapling_verify设置为on时,Nginx 会验证 OCSP 响应的签名和有效性,确保响应来自可信的 OCSP 服务器,并且响应内容是最新的。 - 禁用验证:当
ssl_stapling_verify设置为off时,Nginx 不会验证 OCSP 响应的有效性,直接使用返回的响应。
2. 使用场景
- 安全性要求高的场景:在安全性要求较高的环境中,建议启用
ssl_stapling_verify,以确保客户端获取到的证书状态信息是可信的。 - 性能要求高的场景:在性能要求较高的环境中,如果对证书状态的实时性要求不高,可以考虑禁用
ssl_stapling_verify,以减少验证带来的性能开销。
3. 配置示例
// www.javascriptcn.com code example
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /path/to/certificate.crt;
ssl_certificate_key /path/to/private.key;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;
}在这个配置中,ssl_stapling_verify 被设置为 on,表示 Nginx 会验证 OCSP 响应的有效性。
4. 注意事项
- OCSP 服务器可用性:确保 OCSP 服务器是可用的,否则可能导致客户端无法获取证书状态信息。
- 性能影响:启用
ssl_stapling_verify会增加一定的性能开销,特别是在高并发场景下,需要权衡安全性和性能。
通过合理配置 ssl_stapling_verify 指令,可以在保证安全性的同时,优化 Nginx 的性能表现。