为了https,做一个免费的证书。
x509证书一般会用到三类文,key,csr,crt。
Key 是私用密钥,通常是rsa算法。
Csr 是证书请求文件,用于申请证书。在制作csr文件的时,必须使用自己的私钥来签署申,还可以设定一个密钥。
crt是CA认证后的证书文,(windows下面的,其实是crt),签署人用自己的key给你签署的凭证。
1、key的生成
openssl genrsa -des3 -out server.key 1024
这样是生成rsa私钥,des3算法,openssl格式,1024位强度。server.key是密钥文件名。为了生成这样的密钥,需要一个至少四位的密码,输入一个容易记住密码即可,后面几步都需要用到这个密码。
2、生成CA的crt
openssl req -new -x509 -key server.key -out ca.crt -days 3650
输入密码后,一次填写对应内容:
Country Name (2 letter code) [AU]:CN (国家,2个字符)
State or Province Name (full name) [Some-State]:JiangXi(所在省份)
Locality Name (eg, city) []:NanChang (所在区域)
Organization Name (eg, company) [Internet Widgits Pty Ltd]: company (组织名称)
Organizational Unit Name (eg, section) []:DEPARTMENT (部门名称)
Common Name (e.g. server FQDN or YOUR name) []:domain.name (域名)
Email Address []: (邮件,非必填)
回车完成输入后,生成的ca.crt文件是用来签署下面的server.csr文件。
3、csr的生成方法
openssl req -new -key server.key -out server.csr
同2输入对应的内容。
回车后会有以下提示:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
输入项均为非必填项,可以直接回车。
生成的csr文件交给CA签名后形成服务端自己的证书。
4、crt生成方法
openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey server.key -CAcreateserial -out server.crt
输入key的密钥后,完成证书生成。-CA选项指明用于被签名的csr证书,-CAkey选项指明用于签名的密钥,-CAserial指明序列号文件,而-CAcreateserial指明文件不存在时自动生成。
最后生成了私用密钥:server.key和自己认证的SSL证书:server.crt
证书合并:
cat server.key server.crt > server.pem
标签:crt,证书,openssl,server,key,生成,csr From: https://www.cnblogs.com/nieqm/p/18028729