CA证书--基础--02--使用openssl生成CA认证文件并为服务器和客户端颁发CA签名证书

CA证书–基础–02–使用openssl生成CA认证文件并为服务器和客户端颁发CA签名证书


1、生成认证主要流程

  1. 虚拟出一个CA认证机构,为其生成公私钥以及自签证书
  2. 生成服务器方私钥,发送包含服务器方公私钥的申请文件给CA机构请求签发证书
  3. 生成客户端方私钥,发送包含服务器方公私钥的申请文件给CA机构请求签发证书
  4. 生成证书

注意:建议新建一个或多个目录用于存放密钥/认证文件

2、具体生成过程

2.1、虚拟出一个CA认证机构,为其生成公私钥以及自签证书

2.1.1、为CA机构生成私钥

mkdir /root/CA
cd /root/CA

openssl genrsa -out ca.prikey 2048


genrsa:表示生成私钥 
-out:表示输出到哪个文件 
2048:指定密钥长度

2.1.2、为CA机构生成公钥


openssl rsa -in ca.prikey -pubout -out ca.pubkey

rsa:表示生成公钥 
-in:指定输入文件 
-pubout:表示提示openssl要输出的文件为公钥文件

2.1.3、为CA机构生成自签名证书

openssl req -new -x509 -days 3650 -key ca.prikey -out ca.cert

req:表示生成请求文件
-new:表示创建一个新请求
-x509:类似证书版本号
-days:指定证书有效时间
-key:指定私钥文件

注意:提示输入信息可以直接回车,如若输入错误可以尝试使用BackSpace或者Ctrl+BackSpace进行删除
在这里插入图片描述

2.2、服务器方 生成内容

2.2.1、为服务器生成私钥

mkdir -p /root/CA/service
cd /root/CA/service

openssl genrsa -out ser.prikey 2048

2.2.2、生成服务器证书申请文件

openssl req -new -key ser.prikey -out ser.csr

在这里插入图片描述

2.2.3、把服务器申请文件发送给CA机构,请求签发证书


openssl x509 -req -days 3650 -in ser.csr -CA /root/CA/ca.cert -CAkey /root/CA/ca.prikey -CAcreateserial -out ser.cert
 
-CA:指定CA机构的签名证书文件
-CAkey:指定CA机构的私钥文件
-CAcreateserial:CA认证标识

在这里插入图片描述

2.3、客户端方 生成内容

2.3.1、为客户端生成私钥

mkdir -p /root/CA/cli
cd /root/CA/cli

openssl genrsa -out cli.prikey 2048

2.3.2、生成客户端证书申请文件

openssl req -new -key cli.prikey -out cli.csr

在这里插入图片描述

2.3.3、把客户端申请文件发送给CA机构,请求签发证书

openssl x509 -req -days 3650 -in cli.csr -CA /root/CA/ca.cert -CAkey /root/CA/ca.prikey -CAcreateserial -out cli..cert

在这里插入图片描述