在ubuntu 10.04上运行的Amazon EC2实例上设置多个SSL证书

我需要保护两个在同一个EC2实例上的不同域。

原因:1是销售网站。 另一个是webapp。 两者都需要访问相同的MySQL数据库。

编辑

销售网站是指用户查看我的定价计划等网站,并注册。 webapp是一个SaaS Web应用程序,他们可以在注册后访问它们。

编辑结束

问题:webapp域需要使用已经购买的通配符SSL证书。

销售网站需要使用已经购买的标准SSL证书。

有人告诉我,一个EC2实例只能有1个弹性IP地址。

我的IP地址不能超过1个SSL证书。

我发现这篇文章http://www.invokemedia.com/setting-up-multiple-ssl-domains-on-amazon-ec2-one-ipport/关于使用UCC证书来解决这个问题。

但我不确定是否

  • a)这将起作用,我不希望不必要地花钱,最后浪费它。
  • b)它将同时使用通配证书和标准证书。
  • c)使用UCC会意外地破坏用户对SSL访问的目的。
  • d)如何安装和使用它。
  • e)自从我获得GoDaddy的两个SSL证书之后,如何获得UCC。

我可以预见的另一个可能的解决scheme是,我得到一个EC2实例托pipe的Web应用程序,另一个EC2实例托pipe的销售网站,这当然会使我的每月托pipe成本翻倍。

那么问题出现在我的编程假定这两个应用程序需要在同一个服务器访问相同的MySQL数据库。

对我来说,什么是最好的方式 – 安全智慧,可靠性智慧,努力智慧,成本智慧,按照重要性的降序排列?

我学到的东西

  • 1 SSL证书到1 IP:端口不是1 SSL证书到1 IP
  • 有一种叫做UCC SSL证书的东西,不太清楚这意味着什么,除了允许你同时使用一个IP:PORT
  • 有一种叫做ELB Elastic Load Balancer的东西,可以让你克服1个EC2实例上的IP

我学到的东西的结尾

每个IP可以有多个SSL证书,但每个IP:端口组合不能超过1个SSL证书。 如果您愿意尝试在非标准端口上运行其中一个SSL证书(除443之外的任何内容),则可以使用单个IP地址。

您可以轻松地在不同的端口上提供不同的SSL证书。

事实certificate,这可以通过Elastic Load Balancer轻松实现。 您可以将多个弹性负载均衡器IP上的端口443redirect到您实例上的不同端口。

有人很友好地写一个很好的教程,完成与图表: http : //elwoodicious.com/2009/12/23/using-elb-to-serve-multiple-domains-over-ssl-on-ec2-for-笑声/

您所指的“UCC”证书是在SubjectAltName字段中具有许多名称的证书。 既然你已经有一个通配符证书,你可能会发现它是有限制的 – 你用通配符覆盖了多less个不同的域名? 基于SAN的证书的一个优点是可以覆盖多个域,但是在请求证书时需要单独枚举每个域名,而不是允许浏览器匹配通配符证书。