我需要能够向访问我的站点的Web客户端展示由两个不同的CA签名的两个证书,如果客户端不信任另一个,则应该select另一个。 有没有办法做到这一点? 我在Ubuntu 16.04.3 vm下运行NGINX 。
如果你有nginx 1.11.0+和opensl 1.0.2+,你可以有多个证书链
从http://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_certificate
从版本1.11.0开始,可以多次指定该指令来加载不同types的证书,例如RSA和ECDSA:
server { listen 443 ssl; server_name example.com; ssl_certificate example.com.rsa.crt; ssl_certificate_key example.com.rsa.key; ssl_certificate example.com.ecdsa.crt; ssl_certificate_key example.com.ecdsa.key; ... }
只有OpenSSL 1.0.2或更高版本支持不同证书的单独证书链。 对于旧版本,只能使用一个证书链。