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

这篇具有很好参考价值的文章主要介绍了开源CA搭建-基于openssl实现数字证书的生成与分发。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、前言

二、openssl介绍

三、openssl的常用用法

(一)单向加密

(二)生成随机数

(三)生成公钥,私钥

1.生成私钥

2.提取公钥

四、搭建CA

(一)创建根CA私钥:

(二)生成自签名证书

(三)创建数据库以及新颁发证书数字

(四)设置证书的起始编号

(五)创建文件夹储存用户信息

五、颁发证书

(一)生成服务器自己的私钥

(二)为服务器申请证书

(三)CA签署服务器的证书

(四)验证证书是否有效

六、吊销证书


 文章来源地址https://www.toymoban.com/news/detail-460440.html

一、前言

数字证书与CA的介绍:

证书是建立公共密钥和某个实体之间联系的数字化的文件。它包含的内容有:版本信息(X.509也是有三个版本的)、系列号、证书接受者名称、颁发者名称、证书有效期、公共密钥、一大堆的可选的其他信息、CA的数字签名。证书由CA颁发,由CA决定该证书的有效期,由该CA签名。每个证书都有唯一的系列号。证书的系列号和证书颁发者来决定某证书的唯一身份。
 CA是第三方机构,被你信任,由它保证证书的确发给了应该得到该证书的人。CA自己有一个庞大的public key数据库,用来颁发给不同的实体。CA也是一个实体,它也有自己的公共密钥和私有密钥。

openssl可以生成CA的证书文件,私钥,可实现加解密以及数字签名的功能。

二、openssl介绍

openssl是一款开放源代码软件包,通过命令行形式执行,包含了ssl协议库,应用程序以及密码算法库,集成了安全套接字层密码库,囊括主要的密码算法、常用密钥、证书封装管理功能及实现ssl协议。

三、openssl的常用用法

(一)单向加密

openssl dgst [-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1] [-c] [-d] [-hex] [-binary] [-out filename]

[-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1] : 指可以用来加密的内容

-out filename指可以把加密内容保存到特定文件中

(二)生成随机数

openssl rand -base64|-hex NUM

可选base64或hex(十六进制)    

NUM:生成随机数的字节长度

(三)生成公钥,私钥

1.生成私钥

需要使用genrsa命令生成私钥,然后从生成的私钥中提取公钥

openssl genrsa [-out filename] [-des | -des3 | -idea] [numbits]

-out filename : 将生成的私钥保存至特定文件中

-des | -des3 | -idea : 可选用的密码学算法

numbits :生成的私钥长度,单位是字节,一般是2048

2.提取公钥

openssl rsa [-in filename] [-out filename] [-pubout]

-in filename : 公钥对应的私钥存储文件

-out filename : 提取出公钥后储存的文件

-pubout :公钥

四、搭建CA

(一)创建根CA私钥:

openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048

(二)生成自签名证书

openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem  -out /etc/pki/CA/cacert.crt  -days 3650

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

(三)创建数据库以及新颁发证书数字

touch /etc/pki/CA/index.txt
touch /etc/pki/CA/serial

(四)设置证书的起始编号

echo 01 > /etc/pki/CA/serial

(五)创建文件夹储存用户信息

cd /etc/pki/CA
mkdir data

五、颁发证书

(一)生成服务器自己的私钥

openssl  genrsa -out /etc/pki/CA/data/server.key 2048

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

(二)为服务器申请证书

openssl req -new -key /etc/pki/CA/data/server.key -out /etc/pki/CA/certs/server.csr

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

注意:前四项填写必须和CA相同,且server' s hostname必须是申请服务器的ip地址或者域名

(三)CA签署服务器的证书

openssl ca -in /etc/pki/CA/certs/server.csr -cert /etc/pki/CA/cacert.crt -keyfile /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/certs/server.crt -days 36500

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

(四)验证证书是否有效

openssl verify -verbose -CAfile /etc/pki/CA/cacert.crt /etc/pki/CA/certs/server.crt

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

显示ok的话就可以了

 

将得到的server.crt和server.key发给服务器,在其ssl配置文件中导入即可实现http到https的转换。如果需要浏览器通过https安全访问web服务的话,还需要在浏览器中导入CA的自签名证书

六、吊销证书

由于撤销证书的命令在openssl配置文件中指定了CA字签名证书的名称,所以在撤销证书前,需要先改一下CA自签名证书的后缀名:

mv /etc/pki/CA/cacert.crt /etc/pki/CA/cacert.pem

  (一)查看证书serial信息

openssl x509 -in /etc/pki/CA/cacert.pem -noout -serial -subject

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

 比对成功后,进行撤销

(二)吊销证书

openssl ca -revoke /etc/pki/CA/newcerts/01.pem

(三)查看证书状态

openssl ca -status 01

(四)定义证书撤销列表的起始编号

echo 01 > /etc/pki/CA/crlnumber

(五)更新证书撤销列表  

openssl ca -gencrl -out /etc/pki/CA/crl.pem

(六)查看证书撤销列表

openssl crl -in /etc/pki/CA/crl.pem -noout -text

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

参考链接:

【CentOS 7+Apache】5分钟完成服务器搭建+全站HTTP转HTTPS_哔哩哔哩_bilibili

CentOS搭建基于Apache与OpenSSL自签名证书的HTTPS服务并解决客户端浏览器信任问题_aptx4869_li的博客-CSDN博客_centos httpd openssl

Centos7创建CA和申请证书 - mingzhang - 博客园 (cnblogs.com)

 

到了这里,关于开源CA搭建-基于openssl实现数字证书的生成与分发的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 数字证书:签名证书&加密证书

    数字证书是基于认证机构(可信第三方)实现的,若不懂请复习PKI相关知识,我国为了加强对数据机密性的管控,采用双证书体系(签名证书加密证书),签名密钥对由用户自己产生,而加密密钥对则是由KMC(密钥管理中心)生成。 ———————————————————

    2024年02月08日
    浏览(48)
  • Java - 数字签名与数字证书

    SSL是一种安全协议,用于在网络传输中提供数据加密、身份验证和完整性保护。它基于传输层协议(如TCP),并为其提供加密和安全功能。 对称加密和非对称加密 : 对称加密 :使用相同的密钥进行加密和解密。 非对称加密 :使用两个密钥:公钥用于加密,私钥用于解密。

    2024年01月24日
    浏览(49)
  • 一文看懂公钥、私钥、数字签名、数字证书

    好文章,记录下来!源文地址:What is a Digital Signature? (youdzone.com) 1.  鲍勃有两把钥匙,一把是公钥,另一把是私钥。 2.  鲍勃把公钥送给他的朋友们----帕蒂、道格、苏珊----每人一把。 3. 苏珊要给鲍勃写一封保密的信。她写完后用鲍勃的公钥加密,就可以达到保密的效果。

    2024年02月09日
    浏览(47)
  • SSL数字证书服务

    SSL/TLS 证书允许Web浏览器使用安全套接字层/传输层安全 (SSL/TLS) 协议识别并建立与网站的加密网络连接。 SSL数字证书主要功能 SSL证书在浏览器或用户计算机与服务器或网站之间建立加密连接。这种连接可以保护传输中的敏感数据免遭非授权方的拦截,从而使在线交易能够完全

    2024年02月06日
    浏览(48)
  • 安全算法(三)消息验证码、数字签名和数字证书

    主要介绍了消息验证码、数字签名和数字证书三种加密方式。 消息认证码 消息认证码可以实现“认证”和“检测篡改”这两个功能。密文的内容在传输过程中可能会被篡改,这会导致解密后的内容发生变化,从而产生误会。消息认证码就是可以预防这种情况发生的机制。 假

    2024年01月22日
    浏览(48)
  • 非对称加密与数字证书

    非对称加密,是指不能从加密密钥推算出解密密钥。加密密钥不需要保密,可以公开,称之为 公钥 ,只需要保守解密秘钥称之为 私钥 。公钥和私钥是 成对 的。常见的非对称加密算法有:RSA、Elgamal、背包算法、Rabin、D-H、ECC。 所谓“成对”的含义:如果用公开密钥对数据进

    2024年02月09日
    浏览(53)
  • 【pfx数字证书制作及操作使用】

    公司业务扩展,要对外开放接口,由于数据的安全性,主要是公司是卖数据的,需要对接口进行验证,于是使用数字证书进行加密解密对数据进行处理,防止篡改接口请求,非法获取数据,于是整理数字证书使用与制做。 在options.config文件中设置证书有效期 CN=名称(一般填公

    2024年02月12日
    浏览(36)
  • 安装软件和驱动程序需要微软数字签名无法安装?数字签名和数字证书区别

    1.安装软件和驱动程序需要微软数字签名无法安装 windows安装exe安装包时: 1.1  解决方法: 1.2           这个问题需要安装驱动补丁进行更新驱动操作,如:Windows6.1-sha2补丁.msu 1.3           这种属于签名问题,解决方法: 1..进入“控制面板”,查看方式为大图标,点击“

    2024年02月05日
    浏览(75)
  • 区块链之加解密算法&数字证书

    目录 一.加解密算法 数字签名 对称加密 DES(Data EncryptionStandard) 3DES(Triple DES) AES(Advanced EncryptionStandard) RSA加密法 DSA(Digital SignatureAlgorithm) ECC(Elliptic CurvesCryptography) 非对称加密 签名与加密过程 非对称加密的应用 对称加密与非对称加密的结合 二.数字证书 图解 加密简单而言就是通

    2024年01月19日
    浏览(40)
  • OpenSSL生成CA证书

    根证书:生成服务端证书,客户端证书的基础。自签名。 服务端证书:由根证书签发。配置在服务器上。 客户端证书:由根证书签发。配置在浏览器、移动APP等客户端上。 单向认证(Client鉴权Server) 1、Client发送连接请求 2、Server端将Server证书发送给Client 3、Client使用CA根证

    2024年02月06日
    浏览(42)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包