pem文件是服务器向苹果服务器做推送时候需要的文件,主要是给php向苹果服务器验证时使用,(我用在百度推送的时候)下面介绍一下pem文件的生成。
1、打开钥匙串,选择需要生成的推送证书(不需要把证书下拉展开)
选择相应证书
2、将Certificate和Private key导出得到 .p12 文件
2.1、生成证书apns_dev_cert.p12的p12文件,按照下面操作导出p12,桌面对应生成apps_dev_cer.p12文件
导出相应的 p12 文件
导出证书Cer的p12文件,设置密码
2.2、生成证书对应的秘钥apns_dev_key.p12的p12文件,按照下面操作导出p12,桌面对应生成apps_dev_ker.p12文件。
导出相应证书Key的p12文件
导出证书Key的p12文件,设置密码
3、将apns_dev_cert.p12和apns_dev_key.p12文件对应转化为apns_dev_cer.pem和apns_dev_key.pem文件
3.1、打开终端,输入cd Desktop
3.2、将apns_dev_cert.p12文件转换为pen格式,输入openssl pkcs12 -clcerts -nokeys -out apns_dev_cert.pem -in apns_dev_cert.p12
1>. 要求输入一个密码,输入.(此处为导出p12的保护密码),此时桌面会生成一个apns_dev_cert.pem文件
3.3、将apns_dev_key.p12文件转换为pen格式,输入openssl pkcs12 -nocerts -out apns_dev_key.pem -in apns_dev_key.p12
1>. 要求输入一个密码,输入.(此处为导出p12的保护密码)
2>. 要求验证保护密码,再一次输入,此时桌面会生成一个apns-dev-key.pem文件
4、将apns_dev_cer.pem和apns_dev_key.pem文件合成为apns_dev.pem文件,此文件将给php后台用于连接苹果服务器时需要使用,在终端继续输入:cat apns_dev_cer.pem apns_dev_key.pem > apns_dev.pem,此时桌面生成一个apns_dev.pem
最终发现是我Mac系统版本(刚从10.12.6升到10.13)太高了,因为10.12.6的openssl版本是0.9.8zh,而10.13的系统openssl的版本是2.x.x,具体多少记不住了,公司电脑升级了,家里的还没升,百度推送不接受高于0.9.8的openssl生成的pem。
1、到https://www.openssl.org/source/old/0.9.x/ 下载openssl 0.9.8zh版本
2、解压下载的压缩包
3、cd 你解压后的压缩包目录
4、执行命令
这一步可能会遇到没有权限创建openssl文件夹的问题,可以手动到/usr/local/下创建一个openssl文件夹,然后在执行命令
5、执行命令
6、openssl将会出现在这个路径下:/usr/local/openssl/bin/openssl,命令行查看下版本:
显示0.9.8zh,成功!!!
7、生成pem:
8、丢给百度推送吧
最后为方便使用,我已经将生成好的0.9.8zh版openssl上传,可以直接下载使用:openssl.zip
在终端测试:openssl s_client -connectgateway.sandbox.push.apple.com:2195-cert apns_dev_cert.pem -key apns_dev_key.pem
终端最后显示以下内容,表示配置pem文件成功,
.............................
如果上面这种方式不行,可以直接采用下面这种方式(我是用下面的这个方式上传百度推送证书验证成功的)
打开终端,输入cd Desktop回车
openssl pkcs12 -in aps_developer_identity.p12 -out MyApnsCert.pem -nodes这个命令。aps_developer_identity.p12 是你导出的p12证书名字,MyApnsCert.pem是你需要生成的pem文件名字。
到此这篇pem文件怎么生成(pem格式文件怎么打开)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/haskellbc/47288.html