本文将为您讨论openssl生成自签证书的一些研究命令将生成证书请求。我们需要一个证书来签署我们颁发的证书。制作证书请求文件2。我们可以签发请求文件和自签证书。同时,它在线生成自签名ssl相关说明证书!
本文目录清单:
一、自签名SSL证书有哪些风险??
什么是自签名?SSL证书?
自签名证书是由不受信的CA机构颁发的数字证书,即自己颁发的证书。与受信任的CA由一些公司或软件开发由一些公司或软件开发商签发的。
虽然自签证书使用与X.同一加密密钥对架构的509证书,但缺乏信任第三方的验证。缺乏独立程中缺乏独立验证会产生额外的风险,这就是为什么自签证证书对公众网站和应用程序不安全的原因。
自签名SSL证书的主要风险:
安全隐患:
自签名SSL证书更付费SSL证书之间的:
自签署的SSL证书:不会被浏览器信任,数据被泄漏级劫持,安全漏洞安全风险高。
解决方案:通过网页找到安信证书,申请CA可信的SSL证书认证。
由于自签证书中没有可信根,浏览器访问域名会提示不安全信息等提醒。此外,更容易受到黑客、钓鱼网站、恶意拦截等攻击,侵犯企业和用户的安全。购买可信证书,选择天威诚信,更安全放心。
二、
如何使用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两次确认私钥密码,输出结果为客户颁发证书。
可以通过batch可以通过选项取消命令提示notext取消证书输出显示选项。
此外,还可以一次向多个客户颁发证书infiles选项替换in但这个选项必须放在最后,因为以后的任何字符都被处理成文件名列表。
生成的证书放在里面certs目录,同时和serial所有都变了。
publicdoubleside=10.0;//去掉static
三、
如何用openssl命令生成证书
如果你想创建一个自签证书,而不是一年的有效期,或者想提供你自己的额外信息,你可以使用一个工具Open
SSL创建证书,而不是SDK标准工具:MakeKeys。
基于这里给出的建议,下面的命令演示了如何创建有效期为10年的自签名key/certificate对。
基于这里给出的建议,下面的命令演示了如何创建有效期为10年的自签名key/certificate对。最近做ca登陆,用到openssl
做证书,说真的,用openssl制作命令行证书确实不方便。
首先要安装openssl,然后在控制台输入冗长命令,不小心很容易
易出错,就算是熟悉了命令行,{n}多做了几次还是会弄混淆命令的参数,基于以上原因,我就想做一个ca证书制作的工具,封装好openssl的命令行{n}做成类似于微软的iis制作证书的向导那样,因此cabuilder4openssl就这样开始了{n}花了
毕业证样本网创作《openssl 生成自签证书,在线生成自签证ssl证书》发布不易,请尊重! 转转请注明出处:https://www.czyyhgd.com/475206.html