【问题标题】:AWS ELB with GoDaddy SSL certificate [closed]带有 GoDaddy SSL 证书的 AWS ELB [关闭]
【发布时间】:2016-01-24 12:30:26
【问题描述】:

我有一个在 AWS 上运行的网站,需要 SSL。该网站具有根据访问的子域必须通过白色标记的功能。例如,当访问 www.a.the-site.com 时,网站看起来与从 www.b.the-site.com 访问时不同,但它是处理两个 url 的同一虚拟主机。我使用一个指向 EC2 实例的 ELB(在这个阶段只有一个实例)这在正常 http 上运行时效果很好。

我按照 AWS 上的分步教程(http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/ssl-server-cert.htmlhttp://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/elb-create-https-ssl-load-balancer.html#configure-https-listener)生成密钥(为了便于参考,下面列出了步骤)并从 GoDaddy 获得了证书。 (在 GoDaddy 网站的证书申请流程中粘贴 CSR 后,会显示正确的 CN)。购买的证书是通配符证书,用于支持不同的子域。我使用AWS网站界面在ELB上申请了Certificate,没有提示任何错误,但是现在通过https访问网站时,浏览器出现SSL错误:

“本网站提供的安全证书是针对不同网站的地址颁发的。”

调查https://www.sslshopper.com 上的证书显示以下内容:

它表明没有一个通用名称匹配,但链中的通用名称是正确的 (*.the-site.com)

我还可以发布创建私钥和 CSR 所遵循的步骤,但我没有收到任何指示这些不正确的迹象。似乎 CN *.the-site.com 无法解析 www.a.the-site.com。任何人都可以对此有所了解吗?

【问题讨论】:

  • 这是正确的行为。通配符 SSL 证书中的 * 仅覆盖/匹配一级主机名,因此 a.example.com 将匹配但 www.a.example.com 将不匹配。您的解决方案(解决方法)将配置您的平台以获取传入的 Host: 标头,如果找到 www.,将其剥离,然后使用 Location: https://a.example.com 重定向浏览器 301 Moved Permanently,以便“www”链接在在没有 https 的情况下使用。发布的 HTTPS 链接需要排除 www 前缀。

标签: ssl amazon-ec2 https amazon-elb


【解决方案1】:

@Michael - sqlbot 是正确的,通配符证书只检查单个域。我将域设置更改为不重定向到 www.a.example.com,而是重定向到 a.example.com(删除 www 子域),一切都按预期工作。

【讨论】:

    猜你喜欢
    • 2012-10-10
    • 1970-01-01
    • 1970-01-01
    • 2020-11-06
    • 1970-01-01
    • 1970-01-01
    • 2018-11-01
    • 1970-01-01
    • 2012-11-21
    相关资源
    最近更新 更多