AWS:"无法解析证书.请确保证书采用PEM格式."

mar*_*ful 44 ssl-certificate amazon-web-services amazon-elb

我正在尝试在AWS上更新EC2实例的通配符证书.这些服务器所属的服务由AWS ELB后面的单个服务器和一组服务器组成.

证书已在单个服务器上成功更新和验证.

对于从ELB用于AutoScaling的图像中拉出的实例也是如此.

但是,在尝试向负载均衡器添加新证书时,我收到上述错误.我确定证书是正确的,并且是PEM格式.我首先尝试通过Web控制台,然后使用具有相同结果的aws aim命令行工具.

最近有人遇到过类似问题吗?

小智 86

AWS CLI需要file://本地文件的前缀.例如file://private.key,file://cert_file

  • 听起来很奇怪,但这个建议对我有用.最初得到的确切的错误信息是这个问题的标题,但是为每个文件名添加`file://`使得上传工作完美.使用Windows x64 MSI AWS CLI安装程序,并使用`cmd`执行.将`X`替换为您的证书名称.`aws iam upload-server-certificate --server-certificate-name X --certificate-body file://cert.crt --private-key file://key.key --certificate-chain file:// chain .crt --path/cloudfront/X /` (5认同)
  • Linux上的同样问题,用文件前缀修复.愚蠢的我没有阅读官方文档,而是阅读一篇奇妙的误导性博客文章. (2认同)
  • 适合每一位 Mac 用户。确实应该在证书文件名之前使用“file://”前缀。出于某种原因,我认为这一定只适用于 Windows。 (2认同)

Vik*_*rum 77

刚遇到同样的问题:Web控制台和AWS CLI在无法解析证书时报告了同样的错误.

错误的根本原因是私钥 - 将我的私钥转换为"RSA私钥"解决了问题:

openssl rsa -in server.key -out server.key.rsa
Run Code Online (Sandbox Code Playgroud)

然后,使用server.key.rsa私钥字段并保留公共证书.

  • 原来这是同一个问题.他们的错误信息是,没有太多信息.实际上是胡说八道.密钥有效,因此可以对其进行解析并采用所需格式(PEM).但它是用他们不接受的算法生成的. (10认同)
  • 它没有为我解决,输出文件完全相同 (3认同)