【问题标题】:Nginx load balancer SSL certsNginx 负载均衡器 SSL 证书
【发布时间】:2020-03-13 15:53:50
【问题描述】:

我对 NGINX 完全陌生。

我想使用免费版本(不是 nginx plus)在 3 个服务器之间进行负载平衡(反向代理),并且连接必须是 SSL / 443。

我是把 SSL 证书放在 NGINX 负载均衡器服务器上,还是将 3 个 SSL 证书分别放在 3 个 Web 服务器上?我听到了褒贬不一的评论。我正在寻找最佳性能。

附加信息:我正在使用通配符 SSL 证书,其他 Web 服务器是带有 IP_Hash 的 IIS,以在相同的 Web 服务器上保持会话。

【问题讨论】:

    标签: nginx ubuntu-18.04 nginx-reverse-proxy


    【解决方案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
    
    

    【讨论】:

      【解决方案2】:

      这个问题已经在 StackExchange 网络中提出,但我还是会尝试回答你的问题。

      性能影响应该很明显,但这实际上取决于您正在运行的内容。

      考虑使用多个证书的一件事是,一旦请求到达负载平衡器,它就会在数据中心/网络内保持安全。

      这在您不拥有硬件且无法物理访问机器/数据中心的情况下很有用。这是因为可能有多个人在共享空间中运行服务器和应用程序,您无法确定该网络中是否有人在窥探并监视流量。你只是不能确定这不会发生。

      仅使用一个证书(用于负载平衡器)称为“SSL 卸载”,您可以而且应该在此处了解更多信息:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-04-09
        • 1970-01-01
        • 2019-03-25
        • 2016-04-05
        • 2014-06-08
        • 2016-11-10
        • 1970-01-01
        • 2013-11-30
        相关资源
        最近更新 更多