在一个Heroku的应用多个SSL证书(Multiple SSL Certificates in O

2019-07-03 22:43发布

是否有可能在单一应用程序的Heroku许多SSL证书?

我们有不同类型和TLD的指向我们的应用程序的多个域名,并需要确保每个域名。 最好不重定向到一个不同的安全网址。

Answer 1:

有一种方法有多个SSL端点路由流量相同的应用程序。

一个SSL端点的工作方式终止SSL连接,并注入未加密的流量回到正常的Heroku路由层。

您可以通过使用新的SSL端点创建一个新的应用程序终止SSL连接和路由通信到现有的应用程序充分利用这一点:

  1. 添加您的域名到您的应用程序:

    $ heroku domains:add ssl.example.com

  2. 创建一个新的应用程序:

    $ heroku create endpoint-for-example-com

  3. 添加SSL端点插件($ 20 /月):

    $ heroku addons:create ssl:endpoint --app endpoint-for-example-com

  4. 您的证书添加到您的新应用:

      $ heroku certs:add server.crt bundle.pem server.key --app endpoint-for-example-com --type endpoint Resolving trust chain... done Adding SSL Endpoint to endpoint-for-example-com... done endpoint-for-example-com now served by kagawa-1482.herokussl.example.com 
  5. 使用分配给您的新应用(如SSL端点kagawa-1482.herokussl.example.com )作为CNAME主机要保护的域名。 这是在域的DNS配置正常完成。

新的应用程序不需要任何DYNOS,但会有一个收费$ 20 /月为SSL端点附加。

笔记:

  • 这个解决方案不是由Heroku的记录,因此有可能他们会删除或更改,今后这种行为。 Heroku的已确认这是在生产中使用是安全的。
  • 一定要在同一个区域来创建端点作为主应用程序。
  • 这可能需要一段时间你的DNS更改生效。


Answer 2:

最近的Heroku已经增加了自动LetsEncrypt TLS证书支付DYNOS,爱好及以上。 这将在任意数量的域和子域的工作自动完成。 此方法仅如果您不需要通配符子域的作品。

此外,您可以自行管理LE认证跨多个域和子域,与certbot

certbot certonly --standalone -d example.com -d www.example.com -d test.net

您可以参考这个Heroku的文档上传自定义证书。



Answer 3:

虽然没有确切的一样OP的问题,我能够用一个单一的SAN(主题备用名称)约$ 25 /年的证书来实现这一目标在Heroku。

我生成CSR具有多个主题替代名称( subjectAltName )在OSX由:

  1. 复制/System/Library/OpenSSL/openssl.cnf到当前目录,并修改有关的部分( [req][v3_req]

     [req] req_extensions = v3_req [v3_req] subjectAltName=DNS:www.example1.com,DNS:www.example2.com,DNS:www.example3.com 
  2. 然后,我生成CSR时使用这个新的.CNF:

     openssl req -nodes -newkey rsa:2048 -keyout server.key -out server.csr -config openssl.cnf 
  3. 我购买了从SSLs.com的证书。 他们的科摩多“PositiveSSL多域”为$ 25.99 /年写这篇文章和支持3-100域(超过3成本域类似$ 12)。

  4. 我级联的CA束和.CRT我被发送到单个.CRT(按该顺序),并将其加入到Heroku的。 所有3个域名添加到应用程序,并指出同样的CNAME,和所有的解决通过https://预期。

便宜得多,比240 $额外的端点/年,如果这是任何人都感兴趣的可行途径。

相关链接:

  • https://stackoverflow.com/a/8520510/630614
  • http://apetec.com/support/GenerateSAN-CSR.htm


Answer 4:

我处理这个自己。 Heroku的建议得到一个SAN / UCC证书,它可以让你列出多个领域的应用。 只是与GoDaddy做到了,它的正常工作为止。

https://devcenter.heroku.com/articles/ssl-endpoint#serving-multiple-domains



Answer 5:

我们有属于多个公司的多个域名。 一个SAN / UCC证书仅适用于由同一实体/公司/个人拥有的域名。 我们创造了在后台作为一个快速修复的iFrame但我们既然动了我们的平台,我们自己的基础设施。



文章来源: Multiple SSL Certificates in One Heroku Application
标签: ssl heroku