How to pass through SSL traffic on nginx based on SNI?

Solution 1:

http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass tells that proxy_pass is allowed in location, if in location and limit_except sections.

However, if you use server block with TLS, the server always terminates TLS.

In order to pass TLS through, you need to use the stream module.