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

这篇具有很好参考价值的文章主要介绍了在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

linux证书生成,# 服务搭建,Linux,服务器,运维,linux,centos

 (2)为CA机构生成公钥

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

rsa:表示生成公钥

-in:指定输入文件

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

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

linux证书生成,# 服务搭建,Linux,服务器,运维,linux,centos  

(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

linux证书生成,# 服务搭建,Linux,服务器,运维,linux,centos注意:提示输入信息可以直接回车,如若输入错误可以尝试使用BackSpace或者Ctrl+BackSpace进行删除 

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

[root@sulibao ca_ca]# ll
total 28
-rw-r--r-- 1 root root 1363 Jan  7 19:07 ca.cert
-rw-r--r-- 1 root root 1675 Jan  7 18:54 ca.prikey
-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

linux证书生成,# 服务搭建,Linux,服务器,运维,linux,centos

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

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

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

linux证书生成,# 服务搭建,Linux,服务器,运维,linux,centos  

(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认证标识

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

linux证书生成,# 服务搭建,Linux,服务器,运维,linux,centos

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

[root@sulibao ca_ca]# ll
total 40
-rw-r--r-- 1 root root 1363 Jan  7 19:07 ca.cert
-rw-r--r-- 1 root root 1675 Jan  7 18:54 ca.prikey
-rw-r--r-- 1 root root  451 Jan  7 18:56 ca.pubkey
-rw-r--r-- 1 root root   17 Jan  7 20:09 ca.srl
-rw-r--r-- 1 root root 1245 Jan  7 19:28 ser.cert
-rw-r--r-- 1 root root 1082 Jan  7 19:17 ser.csr
-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

linux证书生成,# 服务搭建,Linux,服务器,运维,linux,centos  

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

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

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

 linux证书生成,# 服务搭建,Linux,服务器,运维,linux,centos

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

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

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

linux证书生成,# 服务搭建,Linux,服务器,运维,linux,centos

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

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

已生成认证文件 文章来源地址https://www.toymoban.com/news/detail-567943.html

到了这里,关于在Linux上使用openssl生成CA认证文件并为服务器和客户端颁发CA签名证书的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 开源CA搭建-基于openssl实现数字证书的生成与分发

    目录 一、前言 二、openssl介绍 三、openssl的常用用法 (一)单向加密 (二)生成随机数 (三)生成公钥,私钥 1.生成私钥 2.提取公钥 四、搭建CA (一)创建根CA私钥: (二)生成自签名证书 (三)创建数据库以及新颁发证书数字 (四)设置证书的起始编号 (五)创建文件

    2024年02月06日
    浏览(32)
  • openssl自签名CA根证书、服务端和客户端证书生成并模拟单向/双向证书验证

    1.1 生成CA证书私钥 openssl genrsa -aes256 -out ca.key 2048 1.2 取消密钥的密码保护 openssl rsa -in ca.key -out ca.key 1.3 生成根证书签发申请文件(csr文件) openssl req -new -sha256 -key ca.key -out ca.csr -subj \\\"/C=CN/ST=FJ/L=XM/O=NONE/OU=NONE/CN=localhost/emailAddress=test@test.com\\\" 上述参数含义 req----执行证书签发命令

    2024年04月25日
    浏览(27)
  • Linux(openssl):用CA证书签名具有SAN的CSR

    Linux(openssl):创建CA证书,并用其对CSR进行签名_生成ca证书签名请求文件csr-CSDN博客 提供了方法为CSR进行签名。 对于有SAN的CSR如何签名呢? 1.创建CA证书,与下面的帖子一样

    2024年01月22日
    浏览(31)
  • Win10使用OpenSSL生成证书的详细步骤(NodeJS Https服务器源码)

    远程开启硬件权限,会用到SSL证书。 以下是Win10系统下用OpenSSL生成测试用证书的步骤。 Step 1 . 下载OpenSSL,一般选择64位的MSI Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions     一路点下来,如果后续请你捐款,可以不选择。 win10下很可能的安装路径为: C:Program FilesO

    2024年02月01日
    浏览(32)
  • 【ssl认证、证书】openssl genrsa 命令详解、生成和查看密钥内容

    相关文章: //-----------Java SSL begin---------------------- 【ssl认证、证书】SSL双向认证和SSL单向认证的区别(示意图) 【ssl认证、证书】java中的ssl语法API说明(SSLContext)、与keytool 工具的联系 【ssl认证、证书】SSL双向认证java实战、keytool创建证书 【ssl认证、证书】Wireshark抓包分析 【s

    2024年02月11日
    浏览(28)
  • Linux系统:CentOS 7 CA证书服务器部署

    目录 一、理论 1.CA认证中心 2.CA证书服务器部署 二、实验 1. CA证书服务器部署 三、总结 (1)概念 CA :CertificateAuthority的缩写,通常翻译成认证权威或者认证中心,主要用途是为用户发放数字证书 功能:证书发放、证书更新、证书撤销和证书验证。 作用:身份认证,数据的

    2024年02月10日
    浏览(41)
  • 关于linux openssl的自签证书认证与nginx配置

    自签文档链接 重点注意这块,不能写一样的,要是一样的话登录界面锁会报不安全 域名这块跟最后发布的一致 nginx配置的话

    2024年02月10日
    浏览(33)
  • openssl创建CA证书教程

    总示意图: 第一步: 创建一个秘钥,这个便是CA证书的根本,之后所有的东西都来自这个秘钥 第二步: 是通过秘钥加密机构信息形成公钥 执行命令过程如下图所示: 参数名称 参数值 Country Name 国家代码,比如中国就是CN State or Province Name 省名称 Locality Name 城市名称 Organiz

    2024年02月07日
    浏览(30)
  • SSH、OpenSSH、SSL、OpenSSL及CA

    SSH (Secure Shell) 的缩写,意为“安全外壳协议”,是一种在不安全网络上用于安全远程登录和其他安全网络服务的协议 OpenSSH是 SSH协议 的免费开源实现 SSL(Secure Sockets Layer)是为网络通信提供安全及数据完整性的一种安全协议,在传输层对网络连接进行加密 OpenSSL是 SSL协议的免费

    2024年02月02日
    浏览(28)
  • 利用OpenSSL实现私有 CA 搭建和证书颁发

    修改内容如下: 选项: -new:创建一个新的证书,生成新证书签署请求 -x509:表示证书的格式,专用于CA生成自签证书 -key:生成请求时用到的私钥文件 -days n:证书的有效期限 -out /PATH/TO/SOMECERTFILE: 证书的保存路径 证书文件后缀后缀规定: .crt # certificate的缩写,即证书。证书

    2024年02月13日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包