带有Let's Encrypt的Google App Engine SSL“无法插入”

时间:2016-07-12 03:26:51

标签: google-app-engine ssl encryption lets-encrypt

使用App Engine的“设置”选项卡尝试“添加新的SSL证书”时,使用“通过Google App Engine”控制台进行加密生成会导致对话框错误和对POST请求的400响应。

错误
“无法插入提供的SSL证书。”

之前生成的(大约2个月前 - 当然尚未过期)通过完全相同的方法插入SSL密钥/证书就好了 - 但任何新生成的密钥/证书都没有。我尝试了传统的Let's Encrypt和相对较新的Certbot方法。还尝试了多个子域,裸域,单个域,每个子域都会产生相同的错误。

我见过几个人的规格--rsa-key-size 2048解决了同样的问题,但我也试过指定它(即使它是Certbot的默认设置)。其他答案是“等待2个小时,现在正在工作” - 寻找真正的解决方案,因为不可靠的插入和过期的证书可能会成为一个真正的痛苦。

3 个答案:

答案 0 :(得分:4)

如果在Apache中使用certbot,则默认为4096.因此强制密钥长度为2048.

  

certbot-auto --rsa-key-size 2048   来自文档[https://certbot.eff.org/docs/using.html]

这将在/etc/letsencrypt/live/example.net

中创建PEM证书

转换为RSA(将cmd中的网址更改为您的网站)。

  

sudo openssl rsa -inform pem -in /etc/letsencrypt/live/example.net/privkey.pem -outform pem> rsaprivatekey.pem

以上命令来自此博文http://blog.seafuj.com/lets-encrypt-on-google-app-engine。这也解释了如何设置webapp2网络服务器。

转到App Engine>设置> SSL证书

上传fullchain.pem 上传rsaprivatekey.pem

文件上传按钮工作正常 - 除非更安全,否则无需粘贴。

答案 1 :(得分:1)

几周前,当我尝试使用我之前成功使用的相同配方上传新证书时,我遇到了类似的问题。

最终对我有用的是:

  • 将证书文件的全部内容复制粘贴到标有Or paste the public key certificate in the box below:
  • 的框中

  • 将我的私钥.pem文件末尾的完整密钥复制粘贴到标有Or paste the RSA private key in the box below:的框中(虽然我不记得我是否包含了{{1}和/或尾随-----BEGIN RSA PRIVATE KEY-----行)。

我(有点盲目地)为我的两个复制粘贴操作中的每一个做了几次尝试 - 成功/失败的反馈是立竿见影的。

附注 - 您可能还需要仔细检查您的证书,在我的情况下,我设法成功上传的第一个证书文件是一个不完整的(缺少中间实体),这似乎在我的桌面上工作正常,但从Android浏览时失败,我不得不重新生成另一个。我使用digicert来确认问题并验证第二个证书(当然是根据SO答案的建议;)

答案 2 :(得分:0)

我有这个问题。我在Google Cloud Shell中生成了证书。

我第一次尝试使用fullchain.pem,但这不起作用。

/etc/letsencrypt/live/mydomain.com/cert.pem

我发了 sudo less /etc/letsencrypt/live/whysaurus.com/cert.pem 在谷歌云外壳中,并将其作为pem 509证书上传至appengine,然后被接受。