在HAProxy之后的Nginx集群中更新SSL证书的推荐方法是什么?

在HAProxy之后的Nginx集群中更新SSL证书的推荐方法是什么?,ssl,nginx,lets-encrypt,Ssl,Nginx,Lets Encrypt,所以我想要这个: / Nginx1 (SSL) HAProxy-- Nginx2 (SSL) \ Nginx3 (SSL) 但我有问题: 如何更新所有节点上的Letsencrypt证书 如果我不能用certbot(+some-config)执行此操作,您如何执行此操作?也许是一些分布式k/v存储 最好的做法是在Nginx节点上使用仅限HTTP的服务(而不是HTTPS),并在平衡器上配置SSL 选项: Traefik。可以配置为自动更新LetsEncrypt证书

所以我想要这个:

       /  Nginx1 (SSL)
HAProxy-- Nginx2 (SSL)
       \  Nginx3 (SSL)
但我有问题:

  • 如何更新所有节点上的Letsencrypt证书
  • 如果我不能用
    certbot
    (+some-config)执行此操作,您如何执行此操作?也许是一些分布式k/v存储

  • 最好的做法是在Nginx节点上使用仅限HTTP的服务(而不是HTTPS),并在平衡器上配置SSL

    选项:

  • Traefik。可以配置为自动更新LetsEncrypt证书
  • Fabio。也可以配置为使用SSL证书。(我使用Hashicorp Vault来存储它们)。需要自己配置更新

  • 这两个实例与诸如concur之类的服务发现工具很好地集成。

    每个Nginx实例使用的是相同的证书,还是唯一的证书(不同的私钥、不同的san等)?如果由于HAProxy无法进行TLS更新,则可以考虑更新DNS验证。请参阅使用脱水的ACME客户端。当前所有节点都应具有完全相同的证书如果HAProxy代理/负载平衡Nginx盒,并且它们不会直接从外部连接到,则您可以在HAProxy计算机上托管let Encrypt证书,并为后端计算机使用自签名证书。或者,如果您希望他们都使用Lets加密证书,您可以使用一个框(如果是前端,则最有可能是HAProxy)进行证书续订。然后,您将有一个脚本或cron作业将证书和密钥复制到所有其他框(scp、ssh上的rsync等)