准备工作与环境要求
在开始生成PEM证书前,需要确保系统已安装OpenSSL工具包,建议使用1.1.1以上版本。创建专用目录存储密钥文件(如/etc/ssl/cert/
),建议设置700权限限制访问。
生成RSA私钥
执行以下命令生成2048位的RSA私钥文件:
openssl genrsa -out private-key.pem 2048
若需要移除私钥密码保护,可追加执行:
openssl rsa -in private-key.pem -out nopass.key
建议将密钥文件存储在非Web访问目录,并设置600文件权限。
创建证书签名请求(CSR)
使用生成的私钥创建CSR文件,需填写证书主体信息:
openssl req -new -key private-key.pem -out csr.pem
特别注意Common Name需与域名完全匹配,其他字段建议完整填写增强证书安全性。
生成自签名证书
测试环境可使用以下命令生成有效期为365天的自签名证书:
openssl req -x509 -days 365 -key private-key.pem -in csr.pem -out cert.pem
生产环境建议将CSR提交至CA机构签发,获得.crt
或.cer
格式的正式证书。
证书格式转换与合并
将现有证书转换为PEM格式:
- DER转PEM:
openssl x509 -inform der -in cert.cer -out cert.pem
- 合并证书链:
cat domain.crt intermediate.crt root.crt > fullchain.pem
- 合并证书与私钥:
cat cert.pem private-key.pem > combined.pem
完成转换后建议使用openssl verify
命令验证证书完整性。
技术总结
本文详细演示了从私钥生成到证书签发的完整流程,重点说明了PEM格式转换的关键命令。实际部署时需注意:1)定期更换密钥增强安全性 2)使用证书链保证兼容性 3)通过cron任务设置证书自动续期。