AWS EC2 SSL 服务器证书与 URL 不匹配

AWS EC2 SSL 服务器证书与 URL 不匹配

将证书上传到iam后,当我访问https://www.mywebsite.com我收到这个错误

The identity of this website has not been verified.
  • Server's certificate does not match the URL.
  • Server's certificate is not trusted.

如果我点击证书信息,一切都是错误的

www.example.com
Self-signed root certificate
Expires: Friday 27 September 2024 ........

如果我查询我上传的证书

aws iam get-server-certificate --server-certificate-name certificate_mycertificate

我明白了

"ServerCertificateMetadata": {
        "ServerCertificateId": "XXX", 
        "ServerCertificateName": "certificate_mycertificate", 
        "Expiration": "2015-11-21T23:59:59Z", 
        "Path": "/", 
        "Arn": "arn:aws:iam::XXX:server-certificate/certificate_mycertificate", 
        "UploadDate": "2014-11-21T14:56:13Z"
}

有些不对劲,这是我第一次使用 SSL,而且我对 aws 没有太多经验,任何帮助都将不胜感激,至少我必须开始寻找解决这个问题的方法。

额外细节:

我已经在本地机器上设置了一个虚拟主机,它指向我们的 ec2 的 ip,并使用证书中的域,这就是我获取错误证书信息的地方。

在我们的 ec2 中没有设置负载均衡器,我唯一做的事情就是生成证书,我将其发送给 CA,激活证书并上传我从 CA 获得的证书(链也是如此)。我们的 ec2 中有 4 个实例。我需要创建负载均衡器吗?

我们开发了一个 magento 网站,它是我们 ec2 中的一个实例,我们无法访问该域,因为旧网站仍然存在于另一个不属于我们“拥有”的服务器上,我们正处于开发的最后阶段,我们必须为实际上线设置好一切,所以我们的 magento 网站的域名类似于 ec2-23-23-12-45..... 这就是为什么我在本地机器上设置虚拟主机来检查 ssl 是否正常工作(我的老板告诉我执行此步骤来验证 ssl)

看起来这不是证书的问题,而是 ec2 配置的问题,或者是其他问题。

我使用 SSL 证书检查器得到了相同的结果:

SSL certificate

Common Name = www.example.com
Issuer = www.example.com
Serial Number = A209D18396BD4A44
SHA1 Thumbprint = 307D5DC2E2BBEAB3674558DCFE781DE8896965DF
Key Length = 1024 bit
Signature algorithm = SHA1 + RSA (good)
Secure Renegotiation: Supported

SSL Certificate expiration

The certificate expires September 27, 2024 (3597 days from today)

谢谢

答案1

您的 EC2 实例正在运行 Web 服务器,因此您需要在该 Web 服务器中安装证书。仅当您使用 CloudFront、ELB 等并且希望在 HTTPS 下使用这些服务时,将证书上传到 IAM 才有意义。

使用证书的一个应用是允许 Elastic Load Balancing 进行 HTTPS 访问。实际上,服务器证书也可以与 CloudFront 和 AWS OpsWorks 一起使用。

Amazon AWS – 了解 IAM 服务器证书

相关内容