回答
你的钥匙可能已经在PEM格式,但只是.CRT或.KEY命名。
如果该文件的内容开始-----BEGIN
,您可以在文本编辑器中读取数据:
该文件使用的base64,这是ASCII可读的,而不是二进制格式。证书已经是PEM格式。只需将扩展名更改为.pem。
如果该文件是二进制:
对于server.crt这你会使用
openssl x509 -inform DER -outform PEM -in server.crt -out server.crt.pem
对于server.key,代替openssl x509
使用openssl rsa
。
server.key可能是您的私钥,.crt文件是返回的,已签名的x509证书。
如果这是一个Web服务器,你不能指定加载一个独立的私人和公共密钥:
您可能需要连接的两个文件。对于这一点:
cat server.crt server.key > server.includesprivatekey.pem
我会建议用“includesprivatekey”来帮助你管理你跟上这个文件的权限命名文件。
一个pem
文件包含证书和私钥。这取决于格式的证书/密钥都在,但可能是这样简单:
cat server.crt server.key > server.pem
i继续得到`-bash:server.key.pem:权限被拒绝' – 2014-03-25 00:42:35
@tq:这意味着你不能读取或写入该文件。 – sth 2014-03-25 01:29:41
谢谢@sth会寻找权限。但我正在用sudo命令执行此操作 – 2014-03-25 02:37:19
此外,如果你不希望它要求一个密码,然后需要运行下面的命令:
openssl rsa -in server.key -out server.key
我需要一个AWS ELB做到这一点。被殴打的对话框多次后,终于这是对我工作:
openssl rsa -in server.key -text > private.pem
openssl x509 -inform PEM -in server.crt > public.pem
感谢NCZ
编辑:@floatingrock说
有了AWS,不要忘了在前面加上文件名为file://
。因此,它会像:
aws iam upload-server-certificate --server-certificate-name blah --certificate-body file://path/to/server.crt --private-key file://path/to/private.key --path /cloudfront/static/
http://docs.aws.amazon.com/cli/latest/reference/iam/upload-server-certificate.html
我所观察到的是:如果你使用OpenSSL生成证书,它抓住了这两个文本组成部分,在CRT文件中的Base64证书的一部分。严格的pem格式表示(wiki definition)该文件应以BEGIN和END开始和结束。
.PEM - (增强保密邮件)Base64编码DER证书, 之间 “----- BEGIN CERTIFICATE -----” 和“----- END CERTIFICATE封闭---- - “
因此对于一些需要严格pem格式的库(我在java中遇到过这种情况),生成的crt将无法将验证视为”无效的pem格式“。
即使您使用BEGIN/END CERTIFICATE复制或grep行,并将其粘贴到cert.pem文件中,它也应该可以工作。
这是我做的,不是很干净,但对我的作品,基本上它过滤的文本从BEGIN行开始:
从临时的AppleID门户的grep -A 1000 BEGIN cert.crt> cert.pem
- 下载证书,从钥匙扣
- 导出证书,并给予名称(Certificates.p12)
- 打开终端和其保存上述文件Certificates.p12转到文件夹,下面的命令
运行:
一)
openssl pkcs12 -in Certificates.p12 -out CertificateName.pem -nodes
,B)
openssl pkcs12 -in Certificates.p12 -out pushcert.pem -nodes -clcerts
- 您的.pem文件准备好 “pushcert.pem”。
这是创建的.pem文件
openssl pkcs12 -in MyPushApp.p12 -out MyPushApp.pem -nodes -clcerts
我试图从GoDaddy的去应用程序引擎的最佳选择。诀窍是用什么做这一行:
openssl req -new -newkey rsa:2048 -nodes -keyout name.unencrypted.priv.key -out name.csr
究竟原样,但我的域名(其实不是真的连要紧)
更换名字和我回答关于通用名称的所有问题/组织为www.name。COM
然后我打开了CSR,复制它,在去爸爸粘贴,然后下载下来,解压缩它,导航到与终端解压后的文件夹,然后进入:
cat otherfilegodaddygivesyou.crt gd_bundle-g2-g1.crt > name.crt
然后我用这些指令从Trouble with Google Apps Custom Domain SSL,其分别为:
openssl rsa -in privateKey.key -text > private.pem
openssl x509 -inform PEM -in www_mydomain_com.crt > public.pem
完全一样是,除了代替privateKey.key我用name.unencrypted.priv.key,并且代替www_mydomain_com.crt,我用name.crt
然后我上传的public.pem到管理控制台的“PEM编码的X.509证书”,并上传了private.pem为“未加密的PEM编码的RSA私钥” ..
..这终于工作了。
尝试将GoDaddy证书上传到AWS我失败了几次,但最后它非常简单。无需将任何内容转换为.pem。您只需确保在链参数中包含GoDaddy软件包证书,例如
aws iam upload-server-certificate
--server-certificate-name mycert
--certificate-body file://try2/40271b1b25236fd1.crt
--private-key file://server.key
--path /cloudfront/production/
--certificate-chain file://try2/gdig2_bundle.crt
,并删除以前的上传失败,你可以做
aws iam delete-server-certificate --server-certificate-name mypreviouscert
- 打开终端。
- 转到您的证书所在的文件夹。
- 通过用您的证书替换名称来执行以下命令。
OpenSSL的PKCS12 -in YOUR_CERTIFICATE.p12退房手续YOUR_CERTIFICATE.pem -nodes -clcerts
- 希望这将工作!
- 1. 丢失了CSR文件,但拥有KEY文件和CRT文件
- 2. 如何获取pem文件的公钥?
- 3. 如何从----- BEGIN CERTIFICATE获取RSA密钥----- from.crt和.pem文件?
- 4. 在Python中读取证书(.crt)和密钥(.key)文件
- 5. 将.crt和.pem文件转换为密钥库
- 6. openssl:如何读取.crt文件..?
- 7. 如何转换.CRT为.pem
- 8. 如何导入.pem文件?
- 9. 从crt文件创建p12和keyStore
- 10. SignAPK - PEM文件和PK8文件
- 11. 无法获取读取DSA钥匙从.PEM文件
- 12. PHP RSA gePublicKey从.PEM文件
- 13. 如何使用.key和.pem文件在Android中创建套接字SSL?
- 14. 如何从Mac OS X导出证书以获取.cert和.key文件对?
- 15. 通过指定.pem文件从Glassfish获取
- 16. 从PEM文件获取ASN.1颁发者字符串?
- 17. 如何从文件名获取文件路径和目录?
- 18. 如何获取文件夹的文件和子文件夹
- 19. WindowsExplorer删除从文件夹获取文件和文件
- 20. 获得来自RSA的.pem文件
- 21. 获取从文件
- 22. 通过part传递crt/pem
- 23. 如何将pem转换为pfx文件?
- 24. 使用.key和.crt文件使用GoDaddy证书的Node中的SSL
- 25. .pem文件和.p12文件和URL的 - 哦,我的
- 26. 如何从一个单独的.CRT/.p7b文件转换成一个.pfx文件
- 27. 如何从RTF文件获取文本大小和颜色?
- 28. 如何加载文件privakey文件类型是PEM
- 29. 如何在CRT中模拟文件读取错误
- 30. Apache HttpClient和PEM证书文件
删除** -----开始RSA PRIVATE KEY ----- **和** -----开始加密私钥----- **然后重命名为.crt – user956584 2016-10-31 13:24:54