本文将为您讨论crt7.创建客户端证书密钥文件,1.创建根证书密钥文件(自己做CA),5.创建服务器证书申请文件,4.创建服务器证书密钥。同时也会对csr转CRT相关说明证书!
本文目录清单:
1、如何生成CA证书
一、如何生成CA证书
创建根证书密钥文件(自己制作CA):
创建根证申请文件:
自当前日期起创建十年根证:
创建服务器证书密钥:
创建服务器证书的申请文件
服务器证书自当前日期起有效期为两年
创建客户端证书密钥文件
创建客户端证书的申请文件
创建自当前日期起有效期为两年的客户端证书
将客户端证书文件与客户端证书密钥文件合并成客户端证书安装包
保存生成的文件备用,和是单向配置SSL需要使用的证书文件是双向配置SSL需要使用的证书文件是双向配置SSL需要安装在客户端的证书文件.crt文件和.key两个文件可以合成到一个文件中.pem文件(直接复制过去)
x三类文件一般用于509证书,key,csr,crt。
Key是私用密钥openssl格,通常是rsa算法。
Key是私用密钥openssl格,通常是rsa算法。
Csr是证书请求文件,用于申请证书。在制作csr文件时,必须使用自己的私钥签署申请,也可以设置密钥。
crt是CA认证后的证书文,(windows下面,其实是crt),签字人使用自己的key为您签署的凭证。
的生成
opensslgenrsa-des3-out2048
这样是生成rsa私钥,des3算法,openssl格式,2048位强度。是密钥文件名。至少需要一个四位密码才能生成这样的密钥。无密码可以通过以下方法生成key:
opensslrsa-in-out
没有密码的版本。
2.生成CA的crt
opensslreq-new-x509-key-out-days3650
生成的文件用于签署以下文件。
的生成方法
opensslreq-new-key-
要依次输入国家、地区、组织,email。最重要的是有一个common
name,可以写你的名字或域名。如果为了https这必须与域名一致,否则会引起浏览器报警。生成的csr文件交给CA签字后,在服务端形成自己的证书。
生成方法
CSR文件必须有CA签名可以形成证书,文件可以发送到verisign当地方被它验证时,为什么不自己做呢?CA呢。
opensslx509-req-days3650-in-CA-CAkey-CAcreateserial-out
输入key生成密钥后,完成证书。-CA用于签名的选项指示csr证书,-CAkey用于签名的于签名的密钥,-CAserial并指出序列号文件-CAcreateserial指示文件不存在时自动生成。
最后生成了私钥:与自己认证SSL证书:
证书合并:
二、
如何在CentOS7上为Nginx创建自签名SSL证书
1.生成自签证证书
通常要配置https的服务器,都需要正式的CA机构认证的X509证书。当客户端连接https服务器将通过CA
共钥检查证书的正确性。当客户端连接时https服务器将通过CA
检查该证书的正确性的共钥。但是要得到它CA证书是一件很麻烦的事情,而且要花一定的钱。因此,一些小机构通常使用自签证书。也就是自己做
CA,签署自己的服务器证书。
这个过程有两个主要步骤,第一步是生成自己CA然后生成各种服务器的证书并签名。我是用OpenSSL生成自签证书。
第一步是制作CA的证书:
opensslreq-new-x509-days3650-key-out
这将生成和文件,前者在使用签名时存储必要的密钥,应妥善保管。后者可以公开。上述命令的有效期为10年。
用命令
opensslx509-in-text-noout
查看文件的内容。
有了CA证书之后,您可以为您的服务器生成证书:
opensslgenrsa-des3-out1024
opensslreq-new-key-out
opensslx509-req-in-out-sha1-CA-CAkey-CAcreateserial-days3650
生成前两个命令key、csr文件,最后一个命令是通过制定的x509签名证书。
需要注意的是,在执行上述第二项命令时,CommonName服务器域名应输入选项,否则用户将通过https每次访问协议时,都会有额外的提示信息。
2.配置Apache服务器
首先,创建/etc/apache2/ssl将新制作的和文件复制到目录中。
然后执行命令
a2emodssl
激活Apache的SSL然后在/etc/apache2/sites-enable/
添加虚拟主机的过程类似于添加普通虚拟主机。区别在于主机的端口应该是443。配置如下:
NameVirtualHost*:443
ServerNamelocalhostDocumentRoot/var/wwwSSLEngineOnSSLCipherSuite
HIGH:MEDIUMSSLProtocolall-SSLv2SSLCertificateFile/etc/apache2/ssl/
SSLCertificateKeyFile/etc/apache2/ssl/SSLCACertificateFile/etc/apache2/ssl/
Orderdeny,allowAllowfromlocalhost
ServerNamelocalhostDocumentRoot/var/wwwOrderdeny,allowAllowfrom
localhost
以上配置确保用户在访问443和80端口时能看到相同的内容,仅仅使用不同的协议。修改配置后,可以重启Apache此时需要输入服务器
的密码。修改配置后,可以重启Apache此时需要输入服务器
密码。使用浏览器访问
此时,您应该看到一个弹出对话框,以确认您是否相信该网站的证书。选择信任后,您可以查看该网站的内容。
由于大多数Apache服务器在服务器启动时自动启动,以避免启动Apache输入密码时,可以使用以下命令生成不加密的文件:
opensslrsa-in-out
用新生成的代替原始的key文件即可。通常要配置https所有的服务器都需要正式的ca机构认证的x509证书。当客户端连接时https
服务器将通过ca共钥检查证书的正确性。
但要获得ca证书是一件很麻烦的事情,而且要花一定的钱。
因此,一些小机构通常使用自签证书。
也就是自己做ca,签署自己的服务器证书。
三、
certificate怎么创建
创建X509证书的方法有很多,在Windows在环境中大致总结了几种方法,
1)通过CA获取证书,
2)微软提供makecert获得工具测试证书
3)创建编程方法,Net提供了X509Certificate2
该类别可用于创建证书,但只能从RawData创建后无法修改和删除。FriendlyName任何其他属性。
我在网上找了很久,从来没有找到过通过程序创建自定义证书的方法。后来我想到了一个折中的办法,就是用程序调用
先生成证书,证书的一些参数,如Subject,有效期、序列号等。可以通过参数传输,然后读取生成的证书文件Rawdata中,得到X509Certificate2
证书类型对象。后来我想到了一个折中的办法,就是用程序调用
先生成证书,证书的一些参数,如Subject,有效期、序列号等。可以通过参数传输,然后读取生成的证书文件Rawdata中,得到X509Certificate2
类型的证书对象。当然,这种方法真的很愚蠢,必须依靠外部过程。如果以后有时间,我还是想遵循X509V3
标准,自己创建RawData,然后生成证书,应该是比较灵活的做法。我不知道网民是否有更好的方法来创建自定义证书。
通过创建X509证书代码如下,供大家参考
staticobjectsemObj=newobject;
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
publicclassT_CertInfo
publicStringFriendlyN.创建X509证书的方法有很多,在Windows在环境中大致总结了几种方法,
publicStringFriendlyName;
publicStringSubject;
publicDateTimeBeginDate;
publicDateTimeEndDate;
publicintSerialNumber;
/////////生成X509证书///
///makecert进程的目录
///证书文件临时目录
////证书信息
publicstaticX509Certificate2CreateCertificate(StringmakecrtPath,String
crtPath,
T_CertInfocertInfo)
(certInfo!=null);
(!=null);
stringMakeCert=makecrtPath "";
stringfileName=crtPath "cer";
stringuserName=.ToString;
StringBuilderarguments=newStringBuilder;
mat("-r-n\\"{0}\\"-ssmy-srcurrentuser-skyexchange",
if(ber>0)
mat("-#{0}",ber);
mat("-b{0}",(@"MM\/p\/yyyy"));
mat("-e{0}",(@"MM\/p\/yyyy"));
mat("\\"{0}\\"",fileName);我也见过,太长了,c不能放盘子,我赌你的d盘可以放
crt这就是证书制作的分析。感谢您花时间阅读本网站内容,了解更多信息csr转CRT别忘了在本网站上查找证书信息。
毕业证样本网创作《crt证书制作及csr转CRT证书》发布不易,请尊重! 转转请注明出处:https://www.czyyhgd.com/479186.html