一、生成密钥对
客户端证书生成需首先生成密钥对,包含公钥和私钥。使用OpenSSL工具执行以下命令生成RSA私钥:
- 执行
openssl genrsa -out client.key 4096
生成4096位私钥 - 建议通过
-des3
参数加密私钥文件增加安全性
二、创建证书签名请求
基于私钥生成证书签名请求(CSR),该文件包含客户端身份信息:
- 运行
openssl req -new -key client.key -out client.csr
- 填写必要信息包括国家代码、组织名称、通用名称(建议与用户标识关联)
三、CA签名与证书颁发
需通过可信CA对CSR进行签名认证:
- 企业环境可使用内部CA颁发证书
- 公共场景需向商业CA提交CSR并通过组织验证
- 测试环境可自签名:
openssl x509 -req -in client.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out client.crt
四、安装与配置客户端证书
将签发的证书部署到客户端环境:
- 导出PKCS#12格式证书包:
openssl pkcs12 -export -in client.crt -inkey client.key -out client.p12
- 将证书导入操作系统或浏览器的证书存储区
- 在应用系统中配置双向认证策略,强制验证客户端证书
客户端证书生成需遵循密钥安全、身份绑定、可信颁发三大原则。通过标准化流程生成并部署证书,可有效实现用户身份鉴别与通信加密,构建零信任安全体系。