引用文章 https://blog.csdn.net/liuchunming033/article/details/48470575, 原文有详细介绍,本文只列出操作步骤和相应补充
1、生成自签名CA根证书
$openssl genrsa -out ca.key 2048
$openssl req -new -key ca.key -out ca.csr
$openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt
2、生成server证书,使用ca.crt进行签名,server.csr中的organization名称需要与ca.crt中的一致。
$openssl genrsa -des3 -out server.key 1024
$openssl req -new -key server.key -out server.csr #输入生成server.key时输入的密码
$openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key
3、生成client证书,使用ca.crt进行签名,client.csr中的Organization名称需要与ca.crt中的一致,同时Organizational Unit Name(eg. mp.csdn.net)不能与server的一样。
$openssl genrsa -des3 -out client.key 1024
$openssl req -new -key client.key -out client.csr #输入生成server.key时输入的密码
$openssl ca -in client.csr -out client.crt -cert ca.crt -keyfile ca.key
4、关于私钥文件
之前得到的server.key和client.key都是经过加密的密钥对,包含了私钥和公钥,要得到私钥文件需要运行以下命令
openssl rsa -in server.key -out server_pri.key #输入生成server.key时输入的密码
openssl rsa -in client.key -out client_pri.key #输入生成client.key时输入的密码
5、补充步骤
如果报错 ‘无法找到文件夹demoCA’, 就在当前文件下执行如下命令创建文件夹和文件
$mkdir -p demoCA/newcerts
$cd demoCA
$touch index.txt
$echo 01 > serial
来源:CSDN
作者:酷比少年
链接:https://blog.csdn.net/u012603457/article/details/97265744