pem文件概述
pem文件是服务器向苹果服务器做推送时候需要的文件, 主要是给php向苹果服务器验证时使用.
pem文件生成步骤
-
将证书导出生成 p12 文件
-
打开钥匙串, 选择需要生成的推送证书.
-
右键该证书, 在弹出的选项列表中选择导出...
-
在弹窗中修改名称(apns-dev-cert) 存储位置(桌面), 点击存储. 然后,在新弹窗中输入密码, 点击 "好".
-
-
将 private key 导出生成 p12 文件
导出过程与 "将证书导出生成 p12 文件" 步骤相同, 唯一不同的就是第二步, 导出的是 private key, 并修改名称为apns-dev-key 如图:
-
生成pem文件
-
将 apns-dev-cert.p12 生成 apns-dev-cert.pem 文件
- 打开终端, 输入
cd Desktop
. - 接着输入
openssl pkcs12 -clcerts -nokeys -out apns-dev-cert.pem -in apns-dev-cert.p12
. -
输入密码, 输入123456.(此处为导出p12的保护密码), 此时桌面会生成一个apns-dev-cert.pem文件.
- 打开终端, 输入
-
将 apns-dev-key.p12 生成 apns-dev-key.pem 文件
- 打开终端, 输入
cd Desktop
. - 接着输入
openssl pkcs12 -nocerts -out apns-dev-key.pem -in apns-dev-key.p12
. - 输入验证密码, 输入123456.(此处为导出p12的保护密码).
-
输入保护密码, 然后验证保护密码(服务端用到的密码), 此时桌面会生成一个apns-dev-key.pem文件
- 打开终端, 输入
-
合成 pem 文件
将apns-dev-cert.pem文件和apns-dev-key.pem文件合成为apns-dev.pem文件. 在终端继续输入
cat apns-dev-cert.pem apns-dev-key.pem > apns-dev.pem
此时桌面会生成一个apns-dev.pem文件.
-
-
验证pem文件
在终端输入
openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert apns-dev-cert.pem -key apns-dev-key.pem
如果终端最后显示以下内容,表示配置成功
> Key-Arg : None
Start Time: 1517903359
Timeout : 300 (sec)
Verify return code: 0 (ok)