我正在尝试将我在 Godaddy 上创建的 SSL 证书添加到我在 Mac 上的 Google App Engine 帐户。
使用 Keychain,我创建了一个新的 2048 位 RSA 私钥-公钥对,并用它创建了一个 CertificateSigningRequest.certSigningRequest
。然后我使用这个证书签名请求在 Godaddy 上创建新的 SSL 证书。然后他们让我下载一个包含两个 .crt
文件的 zip 文件(734b34####.crt
和 gd_bundle-g2-g1.crt
).
然后尝试将它添加到 GAE,我得到这个屏幕:
谁能告诉我输入“PEM 编码的 X.509 公钥证书”和“未加密的 PEM 编码的 RSA 私钥”是什么?
我尝试从 Keychain 以各种格式(p12
、cer
)导出所有不同的相关 key 和证书,并将它们转换为 pem
),即使上面没有密码。
出于某种原因,每当我导出并转换私钥时,它的开头如下所示:
包属性
friendlyName: *.mydomain.com
localKeyID: 10 93 42 BE 45...
subject=/OU=域控制验证/CN=*.mydomain.com
issuer=/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certs.godaddy.com/repository//CN=Go Daddy 安全证书颁发机构 - G2
-----开始证书-----
最佳答案
在没有找到任何在 Mac 上执行此操作的指南并尝试了几个小时的不同选项之后,这就是我所做的:
- 连接两个
.crt
Godaddy 提供的合二为一:cat 734b34####.crt gd_bundle-g2-g1.crt > godaddy.crt
. - 使用
godaddy.crt
对于第一个证书(“PEM 编码的 X.509 公钥证书”)。 - 在 Keychain 中,导出(无密码)用于
p12
中的证书签名请求的私钥格式,我们称它为private.p12
: - 转换
p12
私钥:openssl pkcs12 -in private.p12 -out private.pem -nodes -clcerts
.密码是空的。 - [编辑] - 然后转换
private.pem
文件到 RSA 类型:openssl rsa -in private.pem -out private_unencrypted.pem -outform PEM
- 复制创建文件的内容:
pbcopy < private_unencrypted.pem
. - 将(我们刚刚复制的内容)粘贴到第二个文本区域(“未加密的 PEM 编码 RSA 私钥”)。
编辑粘贴的文本,使所有从Bag Attributes
开始的文本直到-----BEGIN RSA PRIVATE KEY-----
(不包括)被删除。结果是一个以-----BEGIN RSA PRIVATE KEY-----
开头的长字符串并以-----END RSA PRIVATE KEY-----
结尾.
您现在应该可以点击底部的“上传”按钮。
呸!
很想看看是否有人有更优雅/正式的方式来做到这一点。
关于google-app-engine - 将 Godaddy 的 SSL 证书添加到 Google App Engine,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44175678/