打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
在Linux上使用openssl生成CA认证文件并为服务器和客户端颁发CA签名证书

本文基于Linux上CentOS 7版本配合openssl与mod_ssl(需要使用yum下载)进行配置演示

目录

一.生成认证主要流程

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

2.生成服务器方私钥,发送包含服务器方公私钥的申请文件给CA机构请求签发证书

3.生成客户端方私钥,发送包含服务器方公私钥的申请文件给CA机构请求签发证书

4.生成证书

二.具体生成过程

1.虚拟CA机构方生成内容

2.服务器方生成内容

3.客户端方生成内容


一.生成认证主要流程

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

2.生成服务器方私钥,发送包含服务器方公私钥的申请文件给CA机构请求签发证书

3.生成客户端方私钥,发送包含服务器方公私钥的申请文件给CA机构请求签发证书

4.生成证书

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

二.具体生成过程

1.虚拟CA机构方生成内容

(1)为CA机构生成私钥

openssl genrsa -out ca.prikey 2048

genrsa:表示生成私钥

-out:表示输出到哪个文件

2048:指定密钥长度

[root@sulibao ca_ca]# openssl genrsa -out ca.prikey 2048

 (2)为CA机构生成公钥

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

rsa:表示生成公钥

-in:指定输入文件

-pubout:表示提示openssl要输出的文件为公钥文件

  1. [root@sulibao ca_ca]# openssl rsa -in ca.prikey -pubout -out ca.pubkey
  2. writing RSA key

  

(3)为CA机构生成自签名证书

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

req:表示生成请求文件

-new:表示创建一个新请求

-x509:类似证书版本号

-days:指定证书有效时间

-key:指定私钥文件

[root@sulibao ca_ca]# openssl req -new -x509 -days 3650 -key ca.prikey -out ca.cert

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

 (4)查看各文件是否齐全

  1. [root@sulibao ca_ca]# ll
  2. total 28
  3. -rw-r--r-- 1 root root 1363 Jan 7 19:07 ca.cert
  4. -rw-r--r-- 1 root root 1675 Jan 7 18:54 ca.prikey
  5. -rw-r--r-- 1 root root 451 Jan 7 18:56 ca.pubkey

已生成认证文件 

2.服务器方生成内容

(1)为服务器生成私钥

openssl genrsa -out ser.prikey 2048

[root@sulibao ca_ca]# openssl genrsa -out ser.prikey 2048

(2) 生成服务器证书申请文件

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

[root@sulibao ca_ca]# openssl req -new -key ser.prikey -out ser.csr

  

(3)把服务器申请文件发送给CA机构,请求签发证书

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

-CA:指定CA机构的签名证书文件

-CAkey:指定CA机构的私钥文件

-CAcreateserial:CA认证标识

  1. [root@sulibao ca_ca]# openssl x509 -req -days 3650 -in ser.csr -CA ca.cert -CAkey ca.prikey -CAcreateserial -out ser.cert
  2. Signature ok
  3. subject=xxxxxx
  4. Getting CA Private Key

(4)查看各文件是否齐全

  1. [root@sulibao ca_ca]# ll
  2. total 40
  3. -rw-r--r-- 1 root root 1363 Jan 7 19:07 ca.cert
  4. -rw-r--r-- 1 root root 1675 Jan 7 18:54 ca.prikey
  5. -rw-r--r-- 1 root root 451 Jan 7 18:56 ca.pubkey
  6. -rw-r--r-- 1 root root 17 Jan 7 20:09 ca.srl
  7. -rw-r--r-- 1 root root 1245 Jan 7 19:28 ser.cert
  8. -rw-r--r-- 1 root root 1082 Jan 7 19:17 ser.csr
  9. -rw-r--r-- 1 root root 1679 Jan 7 19:15 ser.prikey

 已生成认证文件

3.客户端方生成内容

(1)为客户端生成私钥

openssl genrsa -out cli.prikey 2048

[root@sulibao ca_ca]# openssl genrsa -out cli.prikey 2048

  

(2)生成客户端证书申请文件

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

[root@sulibao ca_ca]# openssl req -new -key cli.prikey -out cli.csr

 

(3)把客户端申请文件发送给CA机构,请求签发证书

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

  1. [root@sulibao ca_ca]# openssl x509 -req -days 3650 -in cli.csr -CA ca.cert -CAkey ca.prikey -CAcreateserial -out cli..cert
  2. Signature ok
  3. subject=xxxxxx
  4. Getting CA Private Key

(4)查看各文件是否齐全

  1. [root@sulibao ca_ca]# ll
  2. total 40
  3. -rw-r--r-- 1 root root 1363 Jan 7 19:07 ca.cert
  4. -rw-r--r-- 1 root root 1675 Jan 7 18:54 ca.prikey
  5. -rw-r--r-- 1 root root 451 Jan 7 18:56 ca.pubkey
  6. -rw-r--r-- 1 root root 17 Jan 7 20:09 ca.srl
  7. -rw-r--r-- 1 root root 1204 Jan 7 20:09 cli.cert
  8. -rw-r--r-- 1 root root 985 Jan 7 20:07 cli.csr
  9. -rw-r--r-- 1 root root 1675 Jan 7 20:06 cli.prikey
  10. -rw-r--r-- 1 root root 1245 Jan 7 19:28 ser.cert
  11. -rw-r--r-- 1 root root 1082 Jan 7 19:17 ser.csr
  12. -rw-r--r-- 1 root root 1679 Jan 7 19:15 ser.prikey

已生成认证文件 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
linux下使用openssl生成 csr crt CA证书,opensslcsr
如何保障物联网平台的安全性与健壮性
linux 下生成ssl自签证书并配置nginx通过https访问(好使)
Tomcat6.X SSL的配置-Part2
使用 OpenSSL 创建私有 CA:1 根证书
docker remote api一键TLS加密的实现
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服