NGINX load balancing: upstream ssl name

Solution 1:

According to nginx developers you need to share the same TLS certificate between all backend servers. See the following bug report https://trac.nginx.org/nginx/ticket/1307#comment:5

Solution 2:

ngx_http_proxy_module directive you need is proxy_ssl_name

You can fix that issue with several ways:

  1. Try set it proxy_ssl_name $proxy_host;

  2. Use wildcard ssl certificate.

  3. If it in internal network use http connection for upstream without excess double encryption and allow http connect on upstream side only from your reverse proxy server

  4. Place the same upstream certificate on each node and set it for one expected name proxy_ssl_name backend.example.com;