Nginx como proxy reverso atendendo HTTPS

3

Eu tenho alguns aplicativos de django e ruby, e tenho uma máquina mestre que atua como redirecionamento de proxy reverso para máquinas escravas que armazenam esses aplicativos. Ter middlewares configurados nesses aplicativos para que eles sejam capazes de servir https. Cada máquina executa seu próprio ngnix.

Também configuro https nesses ngnix individuais ou apenas faço alterações na máquina proxy principal? Obrigado.

    
por Daniel Huger 09.07.2012 / 15:37

2 respostas

1

Sim, você pode usar nginx como proxy reverso para servidores de aplicativos no back-end (ou no middle-end, por assim dizer).

Você pode ter seu gateway ou o nginx reverse-proxies identificador ssl. Pessoalmente, a menos que tudo estivesse rodando sob ssl, eu iria servir ssl no nível nginx.

Isso não quer dizer que você não deva realizar testes de carga e desempenho para ver o que funciona melhor em seu ambiente específico; Você deve experimentar configurações diferentes para ver o que funciona melhor para você!

    
por 09.07.2012 / 18:18
0

Se você confia na rede entre seu proxy nginx e suas máquinas de back-end, basta fazer o back- > https- > nginx- > http & > backend.

Mas se você não confiar nessa rede por algum motivo (digamos que seja em uma nuvem pública, por exemplo), você poderá configurar o nginx para usar https ao falar também com os servidores de backend.

Isso obviamente tem um impacto no desempenho, por isso, certifique-se de usar o cliente e os keepalives upstream bem como cache da sessão SSL no nginx para minimizar o número de handshakes SSL envolvidos. A parte de criptografia simétrica do SSL (RC4 ou AES) provavelmente não será um gargalo; são os handshakes SSL que envolvem criptografia de chave pública que podem se tornar um problema de desempenho em sites de alto tráfego.

    
por 09.07.2012 / 18:07

Tags