nginx:对上下游使用SSL连接
对下游使用证书
1.ssl_certificate 指令
语法:ssl_certificate file;
默认:空
放置位置:http,server
2.ssl_certificate_key 指令
语法:ssl_certificate_key file;
默认:空
放置位置:http,server
验证下游证书
1.ssl_verify_client 指令
语法:ssl_verify_client on | off | optional_no_ca
默认:ssl_verify_client off;
放置位置:http,server
2.ssl_client_certificate 指令
语法:ssl_client_certificate file;
默认:空
放置位置:http,server
对上游使用证书
1.proxy_ssl_certificate 指令
语法:proxy_ssl_certificate file;
默认:空
放置位置:http,server,location
2.proxy_ssl_certificate_key 指令
语法:proxy_ssl_certificate_key file;
默认:空
放置位置:http,server,location
验证上游证书
1.proxy_ssl_trusted_certificate 指令
语法:sproxy_ssl_trusted_certificate file;
默认:空
放置位置:http,server,location
2.proxy_ssl_verify 指令
语法:proxy_ssl_verify on | off;
默认:proxy_ssl_verify off;
放置位置:http,server,location
ssl模块提供的变量
安全套件:
①ssl_cipher:本次通讯选用的安全套件
②ssl_ciphers:客户端支持的所有安全套件
③ssl_protocol:本次通讯选用的TLS版本,例如TLSv.2
④ssl_curves:客户端支持的椭圆曲线。
证书:
①ssl_client_raw_cert:原始客户端证书内容
②ssl_client_escaped_cert:返回客户端证书做urlencode编码后的内容
③ssl_client_cert:对客户端证书每一行内容前加tab制表符空白,增强可读性
④ssl_client_fingerprint:客户端证书的SHA1指纹