openssl生成ca证书以及openssl生成ca根证书

摘要:本文介绍了使用OpenSSL生成CA证书的过程,包括RSA和DSA算法的使用。文章首先提供了openssl简单使用手册,然后详细阐述了如何使用openssl生成证书,包括创建密钥、自签署CA证书、签署服务器证书申请、使用证书签署申请生成请求、签证、撤销证书等步骤。同时,文章还介绍了如何建立自己的CA,包括环境准备、生成根证书、向客户颁发证书等过程。全文旨在帮助读者理解和应用OpenSSL在证书生成和管理方面的功能。

本文将为您讨论openssl生成ca一些证书的研究和使用openssl来生成CA证书、申请证书、颁发证书、撤销证书的过程,opensslx509-noout-text-in(查看创建证书),我们可以向我们提交CA生成证书,opensslrsa-noout-text-in(查看创建证书)。同时也会对openssl生成ca根据证书进行相关说明!

本文目录清单:

1、openssl简单使用手册

openssl生成ca证书以及openssl生成ca根证书

2、如何使用openssl生成证书

3、如何用Java调用Openssl生成数字证书

一、openssl简单使用手册

使用openssl来生成CA证书、申请证书、颁发证书、撤销证书的过程,包括了RSA算法和DSA算法。

1.首先建立CA密钥:
opensslgenrsa-des3-out1024(创建密钥)
chmod400(修改权限仅为root能访问)
opensslrsa-noout-text-in(查看创建证书)

2.利用CA密钥自签署CA证书:
opensslreq-new-x509-days3650-key-out
opensslx509-noout-text-in(查看创建证书)

3.签署服务器证书的申请:
opensslgenrsa-des3-out1024

4.使用证书签署申请生成请求:
opensslreq-new-key-out
opensslreq-noout-text-in(查看创建请求)

5.签证:
此时需要先设置openssl配置文件。
modify/usr/share/ssl并根据此配置文件创建相应的目录和文件。
在创建了serial文件完成后,还需要添加当前的八进制serialnumber,如:01
然后执行:
opensslca-keyfile-cert-in-out

6.撤销证书:
opensslca-keyfile-cert-revoke
此时,数据库被更新证书标记为撤销标志,需要生成新的证书撤销清单:
opensslca-gencrl-keyfile-cert-outcrl/
查看证书撤销清单:
opensslcrl-noout-text-incrl/
撤销证书的列表文件WEB可用于站点,必须将crldays或crlhours和crlexts加证:
opensslca-gencrl-config/etc/-crldays7-crlextscrl_ext-outcrl/

如果想使用DSA算法而不是RSA算法,那么:
1.先生成dsa参数
openssldsaparam-rand-genkey-out1024
查看生成的DSA参数
openssldsaparam-noout-text-in

2.根据生成DSA参数来生成DSA密钥
opensslgendsa-des3-out
查看DSA密钥
openssldsa-noout-text-in

以下步骤相同RSA部分

使用前面生成的私钥des3来加密,也可以指定-des用des当然,没有强度des3高了。虽然man里面说还可以通过指定-
idea用idea算法是加密的,但事实上,由于米国专利的问题,默认不支持。

二、如何使用openssl生成证书

Step1.Createkey(passwordprotected)

opensslgenrsa-out1024/2038(withoutpasswordprotected)

opensslgenrsa-des3-out1024/2048(passwordprotected)

该命令将生成1024/2048位的密钥。
Step2.Createcertificationrequest

opensslreq-new-key-out

opensslreq-new-nodes-key-out

当然,这个命令会生成证书请求,用到了前面生成的密钥文件
这里将生成一个新的文件,即证书请求文件。您可以将此文件带到数字证书颁发机构(即CA)申请数字证书。CA会给你一个新的文件,那就是你的数字证书。CA会给你一个新的文件,那就是你的数字证书。

Step3:SendcertificaterequesttoCertificationAuthority(CA)

如果自己做测试,证书的申请机构和发证机构都是自己的。以下命令可生成证书:
opensslreq-new-x509-key-out-days1095
这个命令将用上面生成的密钥生成一个数字证书

生成过程见见OpenSSL建立自己的CA”

可以在自己的程序中使用和文件,例如,制作加密通信服务器

-------------
OpenSSL建立自己的CA

(1)环境准备

首先,需要准备一个目录放置CA文件包括颁发的证书和CRL(CertificateRevokeList)。
在这里我们选择目录/目录/var/MyCA。

在这里我们选择目录/目录/var/MyCA。

然后我们在///var/MyCA建立两个目录,certs用来保存我们的CA所有证书的副本;private用来保存CA私钥证书。

除了生成钥匙,在我们身上CA还需要在系统中创建三个文件。第一份文件用于跟踪最后一份证书的序列号,我们将其命名为serial,初始化为01。第二个文件是跟踪已颁发的证书的排序数据库。我们把它命名为空文件内容。


$mkdir/var/MyCA
$cd/var/MyCA
$mkdircertsprivate
$chmodg-rwx,o-rwxprivate
$echo"01">serial

$touch

第三个文件是OpenSSL创建配置文件要棘手。示例如下:

$touch

文件内容如下:


[ca]

default_ca=myca


[myca]
dir=/var/MyCA
certificate=$dir/
database=$dir/
new_certs_dir=$dir/certs
private_key=$dir/private/

serial=$dir/serial


default_crl_days=7
default_days=365

default_md=md5


policy=myca_policy

x509_extensions=certificate_extensions


[myca_policy]
commonName=supplied
stateOrProvinceName=supplied
countryName=supplied
emailAddress=supplied
organizationName=supplied

organizationalUnitName=optional


[certificate_extensions]

basicConstraints=CA:false

我们需要告诉OpenSSL配置文件的路径,有两种方法可以实现目标:通过config命令选项;通过环境变量OPENSSL_CONF。这里我们选择环境变量的方式。


$OPENSSL_CONF=/var/MyCA/"

$exportOPENSSL_CONF

(2)生成根证(RootCertificate)

我们需要一个证书来签署我们自己颁发的证书。这个证书可以从其他证书签名CA获取,或自签根证书。在这里,我们生成了自签名的根证。在这里,我们生成了自签名的根证。

首先,我们需要在配置文件中添加一些信息,如下所示,节名和命令行工具的命令req一样。我们将所有必要的信息写入配置,而不是在命令行中输入,这是唯一的指定X.509v扩展的方式,也能让我们对如何创建根证有一个清晰的把握。


[req]
default_bits=2048
default_keyfile=/var/MyCA/private/
default_md=md5
prompt=no
distinguished_name=root_ca_distinguished_name
x509_extensions=root_ca_extensions
[root_ca_distinguished_name]
commonName=MyTestCA
stateOrProvinceName=HZ
countryName=CN
emailAddress=test@
organizationName=RootCertificationAuthority
[root_ca_extensions]

basicConstraints=CA:true

万事俱备,我们可以生成根证。注意设置环境变量OPENSSL_CONF。注意设置环境变量OPENSSL_CONF。

$opensslreq-x509-newkeyrsa-out-outformPEM-days356

注:“-days356控制有效期为365天,默认为30天。

验证我们生成的文件。

$opensslx509-in-text-noout

(3)向客户颁发证书

在向客户颁发证书之前,客户需要提供证书的基本信息。我们打开另一个终端窗口,默认使用OpenSSL配置文件(不要让以前OPENSSL_CONF干扰我们,这种配置是专门用来生成根证的)。

命令类似于我们生成的根证书req,但是需要提供一些额外的信息。如下:

$opensslreq-newkeyrsa:1024-keyout-keyformPEM-out-outformPEM


有两个提示要密码,第一个密码用于加密私钥,第二个密码通常是OpenSSL忽略。

结果生成两个文件:私钥匙;请求信息,包括公钥匙。

我们来看看有哪些信息?

$opensslreq-in-text-noout


现在,我们可以向我们提交CA生成证书。

为了方便起见,我们假设是///var/MyCA/private/中。

$opensslca-in


有三次提
示,一次是问你CA的私钥匙密码,两次是确认,输出的结果就是为客户颁发的证书。
{n}可以通过batch选项取消命令提示,可通过notext选项取消证书的输出显示。

{n}此外,还可以一次给多个客户颁发证书,方法是用infiles选项替换in选项,不过这个选

毕业证样本网创作《openssl生成ca证书以及openssl生成ca根证书》发布不易,请尊重! 转转请注明出处:https://www.czyyhgd.com/477691.html

(0)
上一篇 2022年8月24日
下一篇 2022年8月24日

相关推荐

  • csr生成证书和ssl证书生成CSR

    摘要:本文介绍了关于csr生成证书的相关问题,包括申请多域名服务器证书时只需提供一个主域名的CSR文件,并可通过CIM智能证书管理系统自动生成CSR、自动下载证书等。文章还解释了CSR证书申请文件的生成方法,包括在Web服务器或在线生成工具中生成CSR的两种方法。最后,介绍了在Windows 2008服务器上用IIS发布https网站的SSL安全服务配置步骤。本文为读者提供了关于csr生成证书的知识和讨论,感谢读者花时间阅读。

    2022年8月26日
    180
  • https如何生成证书ssl证书生成CSR

    摘要:本篇文章介绍了关于https如何生成证书的几个问题。首先详细阐述了SSL证书的申请步骤,包括在淘宝上找到证书、提前准备域名和邮箱、根据客服提示完成域名认证以及获取SSL安装到服务器或虚拟主机。接着讨论了https如何生成公钥,提到SSL提交证书CSR过程中需验证域名,并介绍ssl握手过程包含公钥的传递。另外,文章还提及银行国密https使用的证书类型。最后,提供了一些关于笔记本电脑无法启动的排除方法。本网站还推荐了更多关于ssl证书生成CSR的问题信息,便于查阅。

    2022年8月31日
    190
  • 苹果证书的生成和苹果证书的制作

    本文讨论了苹果证书生成的相关研究,包括苹果签证、ios生成license文件以及苹果服务器证书失效等问题。文章介绍了苹果证书生成的具体步骤,如自签教程、准备CSR文件、申请证书等。同时,也提到了如何使用闪电签等工具进行签名操作,并强调关注证书类型选择的重要性。此外,文章还提到了ios生成license文件的设置方法和苹果服务器证书失效的替代方案。总之,本文旨在帮助读者了解苹果证书生成的过程和相关技术细节。

    2022年8月31日
    170
  • 大学文凭生成和大学文凭生成需要多长时间?

    摘要:本文讨论了关于大学文凭生成的研究,指出网上出现了大学文凭生成器,操作简单且承诺高仿,但使用假文凭求职应承担民事责任。文中还提到学信网的学历信息不是自动生成的,是由各大学上传学籍和毕业信息。此外,还讨论了大学生提高学历的途径。提醒读者注意毕业证真实性的核实,并阐述了使用假毕业证的风险。

    2022年9月1日
    170
  • 生成Https证书和生成pkcs12证书

    摘要:
    本文主要探讨了HTTP和HTTPS之间的区别,以及HTTPS证书的申请和生成过程。HTTP是超文本传输协议,信息明文传输,而HTTPS是安全的SSL加密传输协议,使用SSL/TLS协议保护数据传输,比HTTP更安全。申请HTTPS证书需要向CA机构提交CSR文件,并通过邮件验证后签发证书。国内建议使用国产HTTPS证书,如沃通CA等。关于CA证书,可以自己服务器生成,但不被浏览器认可,建议购买认证的证书以提高安全性。本文还介绍了SSL协议的功能和重要性,以及如何通过配置实施HTTPS协议。

    2022年9月2日
    170
客服微信
客服微信
返回顶部