一、生成PEM证书的两种方式
通过SSH密钥工具生成证书:
- 执行命令
ssh-keygen -t rsa -b 4096 -f mykey
生成密钥对 - 生成的mykey文件为私钥,mykey.pub为公钥
- 合并公私钥:
cat mykey.pub mykey > cert.pem
通过苹果开发者平台生成:
- 在Apple开发者后台创建Apple Push Notification证书
- 下载.cer文件后使用openssl转换格式
二、转换现有证书为PEM格式
使用OpenSSL工具进行格式转换:
- 将P12文件转换为PEM:
openssl pkcs12 -in cert.p12 -out cert.pem -nodes
- 合并证书链:
cat root_ca.pem intermediate.pem domain_cert.pem > fullchain.pem
三、安装PEM证书到服务器
Nginx服务器配置示例:
ssl_certificate /etc/ssl/certs/fullchain.pem; ssl_certificate_key /etc/ssl/private/domain.key;
需确保证书文件权限设置为600,建议存放在/etc/ssl/
专用目录
四、移动端安装PEM证书
Android系统安装步骤:
- 将PEM文件放入项目res/raw目录
- 通过系统设置 > 安全 > 安装证书导入文件
- 代码实现自定义TrustManager加载证书
通过合理选择生成方式和规范安装流程,PEM证书可有效保障HTTPS通信安全。建议定期更新证书并执行openssl verify
命令进行有效性验证