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

同时也会对openssl生成ca根据证书进行相关说明!
一、openssl简单使用手册使用openssl来生成CA证书、申请证书、颁发证书、撤销证书的过程,包括了RSA算法和DSA算法。
首先,需要准备一个目录放置CA文件包括颁发的证书和CRL(CertificateRevokeList)。

本文将为您讨论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生成证书,毕业证书样本网总结几个问题给大家分析!
    问题三.如何在Windows2008服务器上用IIS发布https网站,具体的SSL安全服务配置步骤:生成和安装申请证书请求CA证书安装服务器证书及配置绑定一、生成证书请求进入IIS控制台在开始”菜单上,依次单击所有程序”、附件”和运行”。

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

    关于https如何生成证书,毕业证书样本网总结几个问题给大家分析!
    问题三.银行国密https是rsa证书还是sm2当笔记本无法启动时,建议按以下方法排除:1。
    感谢您花时间阅读本网站的内容,更多信息(ssl证书生成CSR)我们还在下面的文章中推荐了问题信息,便于查阅。

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

    本文将讨论苹果证书生成的一些研究,并将阐述苹果证书的生产!
    Store对于一个应用程序,您可以在应用程序商店下载个不同于最后一个是需要自己的证书,以下是一个资源组证书,点击下载证书-选择导入闪电标签-闪电标签将提示缺乏描述文件以同样的方式导入-导入安装ipa点击文件ipa选择签名-安装!
    这里需要一个苹果带来的KeyAccess生成证书申请文件的软件。

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

    本文讨论了一些关于大学文凭生成的研究。
    最近,一种大学文凭生成器出现在网上,用户可以自己生成各种大学文凭图片。
    同时也会详细说明大学毕业证生成需要多长时间!
    本文目录清单:1、大学毕业证一键生成网友:想啥呢!
    一、大学文凭一键生成网友:想什么!
    别忘了在本网站上找到更多关于大学毕业证生成需要多长时间的信息。

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

    本文对https生成的证书进行了一些研究。
    HTTPS:超文本传输安全协议,通过在HTTP下添加SSL层来保护数据。
    2、HTTP是超文本传输协议,属于应用层信息传输,HTTPS使用SSL加密传输安全传输协议对数据传输进行加密,与HTTP升级版相同。

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