comment ne pas ssl se terminer à NginX charge balacner

Je veux savoir comment NginX (équilibreur de charge) peut accepter le trafic sur 443 et le transférer au port 443 sur les noeuds du serveur Web à charge équilibrée.

J’utilise NginX comme équilibreur de charge lorsque la terminaison SSL se produit au niveau NginX. Et puis, NginX envoie du trafic non crypté sur mon site Web au port 80.

Ceci est ma configuration ngnx actuelle:

upstream appserver { server 10.0.1.132; server 10.0.1.243; } server { listen 443 ssl; server_name localhost; ssl_certificatee /etc/nginx/cert.pem; ssl_certificatee_key /etc/nginx/cert.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { proxy_pass http://appserver; } } 

Je suis passé par: l’équilibre de la charge Nginx avec SSL en amont

Mon vrai problème est que si je veux que NginX écoute le trafic sur 443, je dois configurer la terminaison ssl sur nignx. Sinon, le service nginx ne démarrera pas et se plaindra de l’absence de cert / clés SSL.

En bref, je veux que Nginx accepte simplement le trafic sur 443 et le transmette au 443 sur les nœuds de serveur Web à charge équilibrée. Ensuite, laissez mes serveurs Web faire le travail SSL.

La meilleure pratique consiste à effectuer un déchargement SSL au niveau de l’équilibreur de charge, mais je souhaite faire autrement.

Merci.

Cela nécessite la surveillance / le routage de couche 4 sur la partie NGINX, qui n’est apparemment pas entièrement prise en charge . NGINX semble prendre en charge SNI, mais pour une raison quelconque, je ne pouvais pas l’empêcher de terminer la connexion TLS.

J’ai fini par utiliser HAProxy.

Pour cela, vous devez utiliser stream au lieu de http.