如何使用Let's Encrypt为自定义域设置SSL Generator

时间:2018-05-07 19:04:08

标签: azure ssl ssl-certificate azure-web-sites lets-encrypt

我想为自定义域设置SSL证书生成器/管理器 - 使用Let的加密,但我无法找到正确的教程。我做了一些研究工作,我可以在一个域/机器上使用nginx设置Let's Encrypt Certbot。

我在Azure上有一个Web应用程序,它将为多个域提供服务,因此来自单个IP的多个custo域。我想在运行中为自定义域生成SSL证书。

我了解到Openresty可以提供帮助,但我找不到任何一步一步的文章。如何使用Let的加密设置SSL管理。此时我不确定是否需要独立的VM,或者是否可以在Web服务器上作为一组REST API端点运行?有什么指针吗?我感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

Azure App Service目前不包含对Let的加密的本机支持,但是有一个社区支持的扩展可以完成工作。

https://github.com/sjkp/letsencrypt-siteextension/wiki/How-to-install

此扩展程序使用webjob来促进自动续订证书,因此应用程序必须为Always On才能自动续订。如果您使用的是部署插槽,请注意您需要在每个插槽中安装扩展,然后将WEBJOBS_STOPPED = 1插槽设置添加到每个非生产插槽(假设您没有在非生产插槽上使用其他webjobs需要在非生产环境中运行)。这可确保webjob始终存在于生产槽上,并且仅在生产槽上运行。

另请注意,如果您使用“删除目的地中的其他文件”文件发布选项从Visual Studio将代码部署到应用程序服务,则执行此操作将从您发布的插槽中删除该webjob。如果这适用于您,您有几个选择:

  1. 每三个月手动刷新一次证书。
  2. 每次发布​​时重新安装扩展程序(您无需重新配置)。
  3. 将webjob克隆到您的解决方案中,并将其与您的项目一起发布。
  4. 可能还有其他选择,但那些是我探索过的。

    微软声称此扩展程序支持Let's Encrypt,但Microsoft不支持此扩展。如果您认为重要的话,可以在这里投票支持让我们在Azure上加密的原生支持:

    https://feedback.azure.com/forums/170024-additional-services/suggestions/16957756-add-integration-with-let-s-encrypt