我有一些理由在应用程序服务器之前使用两个 nginx 服务器。
两个 nginx 服务器都使用 SSL 连接。
Nginx1(SSL 443 和 ssl_verify_client 开启)-> Nginx2 (SSL 443) -> App (9000)
。
在第一台 Nginx1 服务器上,我使用了选项:proxy_set_header client_cert $ssl_client_cert;
在第二台服务器 Nginx2 上,我使用选项:underscores_in_headers on;
问题是第二个 Nginx2 服务器只发送了证书的第一行 - “----- BEGIN CERTIFICATE -----”。
如何将客户端证书传递给应用服务器?
最佳答案
Nginx 毫无异常(exception)地终止 SSL,所以如果您仍然需要此配置 - 您将需要再次进行 SSL 配置并在服务器上保留证书(这里是 relevant SO answer )或基于 Nginx support discussion在 TCP 模式下使用 HAProxy。这是 sample configuration文章。
关于ssl - 如何通过两个服务器 nginx 传递客户端证书?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32403458/