ssl_crl

指令 `ssl_crl` 指定用于检查被撤销 SSL 证书的证书撤销列表(CRL)文件。 — NGINX HTTP Core

ssl_crl
httpserver
语法ssl_crl path;
默认值none
上下文http, server
模块NGINX HTTP Core
参数1

说明

在配置 SSL/TLS 时,`ssl_crl` 指令用于 NGINX,用以指定包含被撤销证书列表的文件。此功能对于维护安全通信至关重要,因为它允许服务器在建立连接之前验证客户端的 SSL 证书是否已被撤销。该指令可以放置在 NGINX 配置的 `http` 或 `server` 块中,确保在 SSL handshake 过程中引用所定义的 CRL。 当客户端出示其证书时,NGINX 会将该列表与其遵循的其他证书验证策略一起进行检查。`ssl_crl` 指定的 CRL 文件必须格式正确且对 NGINX 可访问。此指令有助于避免接受不再有效的证书,从而通过阻止可能使用被泄露凭证的攻击者来提高应用的整体安全性。如果找不到 CRL 文件或文件不可读,可能会导致 SSL handshake 期间出现错误,影响尝试访问该服务的用户。 重要的是,`ssl_crl` 指令只能接受一个参数——指向 CRL 文件的路径。建议保持该列表的更新并主动监控证书状态,以为终端用户提供更安全的环境。使用 CRL 也有一些缺点;例如,除非手动执行或设置为频繁更新,否则它们可能无法提供实时更新。

配置示例

http {
    server {
        ssl on;
        ssl_certificate /etc/ssl/certs/server.crt;
        ssl_certificate_key /etc/ssl/private/server.key;
        ssl_crl /etc/ssl/crl/ca.crl;
    }
}

确保 CRL 文件格式正确并且 NGINX 可以访问。

如果为 `ssl_crl` 提供的路径不正确或文件不可读,SSL 连接可能会失败。

保持 CRL 文件为最新,以避免拒绝有效的证书。