我对NGINX完全陌生。
我想使用免费版本(不是nginx plus)在3台服务器之间进行负载平衡(反向代理),并且连接必须是SSL /443。
我是否将SSL证书放在NGINX负载平衡器服务器上,还是将3个SSL证书分别放在3个Web服务器上?我听过好坏参半的评论。我正在寻找最佳性能。
附加信息:我正在使用通配符SSL证书,并且Web上的其他Web服务器是带有IP_Hash的IIS,以将会话保持在同一Web服务器上。
答案 0 :(得分:1)
再次打开配置文件进行编辑。
sudo nano /etc/nginx/conf.d/load-balancer.conf
然后将以下服务器段添加到文件末尾。
server {
listen 443 ssl;
server_name domain_name;
ssl_certificate /etc/letsencrypt/live/domain_name/cert.pem;
ssl_certificate_key /etc/letsencrypt/live/domain_name/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
location / {
proxy_pass http://backend;
}
}
然后保存文件,退出编辑器,然后再次重新启动nginx。
sudo systemctl restart nginx
启用HTTPS后,您还可以选择对与负载均衡器的所有连接强制加密
server {
listen 80;
server_name domain_name;
return 301 https://$server_name$request_uri;
#location / {
# proxy_pass http://backend;
#}
}
进行更改后,再次保存文件。然后重新启动nginx。
sudo systemctl restart nginx
答案 1 :(得分:0)
这个问题已经在StackExchange网络中问过了,但是我还是要尝试回答您的问题。
对性能的影响应该很明显,但这实际上取决于您的运行情况。
要考虑使用多个证书的一件事是,一旦请求到达负载平衡器,它将在数据中心/网络内部保持安全。
在您不拥有硬件并且对机器/数据中心没有物理访问权限的情况下,这很有用。这是因为可能有多个人在一个共享空间中运行服务器和应用程序,并且您无法确定该网络中是否有人在窥视并监视流量。您只是不确定那将不会发生。
仅将一个证书(用于负载均衡器)称为“ SSL卸载”,您可以并且应该在此处找到有关此证书的更多信息: