Does having and unencrypted connection between the load balancer and nginx pose a security risk?
- Se você estiver falando sobre dados de cartão de crédito e coisas assim: Sim.
If the answer to 1 is yes, how would I setup nginx to allow the secure connections from the load balancer? Would this involve setting up an ssl certificate on each nginx server?
- O
nginx
config é / seria bastante normal, nada sofisticado. - Sim, você precisaria de um certificado ssl em cada máquina executando
nginx
. Você poderia usar um certificado para isso, você não precisa necessariamente de múltiplos. Além disso: Usando o Vamos criptografar agora é bastante fácil e automatizado obter certificados, gratuitamente. - Se você enviar dados confidenciais entre o ELB e suas máquinas, verifique se esses / esses links também estão criptografados. Como fazer isso é explicado nos documentos .
What would the nginx config look like if it needs to be different than a standard ssl setup where nginx is not behind a load balancer?
-
Não há uma grande diferença, tanto quanto eu sei. Se você precisar do IP do cliente por qualquer motivo, coloque essas linhas no seu
nginx
config:real_ip_header X-Forwarded-For; set_real_ip_from ${ip-of-your-elb}/${netmask-of-your-elb};
- Bônus: configure seu "próprio ELB" usando o excelente HAProxy , por exemplo. Indo desta maneira, você poderia cuidar da criptografia entre o ELB e as máquinas de backend, usando o que parece ser apropriado: https, ssh tunnels, uma VPN, ...