openssl自签名证书教程(单域名证书/泛域名证书/多域名证书)
openssl自签名证书与私有CA签名证书有区别,本文只讲openssl自签名证书的操作教程,请勿混淆影响理解。
- 1)openssl自签名单域名证书
- 2)openssl自签名泛域名、多域名证书
1)openssl自签名单域名证书
自签名证书一共三个步骤,1.生成非对称密钥 2.创建证书请求文件 3.自签名证书
##新建一个文件夹,cd到此文件夹,后续操作生成的文件,使用的文件均在次文件夹下。 1.生成非对称密钥 //rsa密钥生成 openssl genrsa -out rsa.key 2048 //查看密钥 openssl rsa -text -in rsa.key //导出公钥 openssl rsa -in rsa.key -pubout -out rsa-public.key
2.创建证书的签名文件csr //创建csr文件 openssl req -new -key rsa.key -out rsa.csr //Common Name :www.example.com //CommonName为证书颁发给的域名,一定要填写正确 //其他选项符合输入条件的情况下可随意填写,如果国家CN,省份GD,城市guangzhou等 //查看csr文件 openssl req -text -in rsa.csr -noout
3.自签名证书 openssl x509 -req -days 365 -in rsa.csr -signkey rsa.key -out rsa_example.cer //也可根据使用情况生成crt格式的文件,如rsa_example.crt
2)openssl自签名泛域名、多域名证书
如何生成泛域名证书和多域名证书呢?
a.泛域名证书在csr文件创建的时候,在Common Name选项输入 *.example.com即可
多域名证书又是什么呢?如下图,我的自签名证书是颁发给*.orcy.net的然而orcy.top的域名依然可以使用,这又是如果做到的呢?
这是因为我在创建csr文件、自签名证书的时候添加了使用者可选名称如下图,此证书颁发后所有的可选名均可使用,如淘宝,ETAO等大型多域名网站均采用此种方式。
b.自签多域名证书
1.生成非对称密钥,如单域名证书
2.新建md.cnf文件,从opessl.cnf中复制相关字段到md.cnf并修改 [req] prompt = no distinguished_name = dn365 req_extensions = ext [dn] CN = www.example.com emailAddress = example@example.com O = example L = guangzhou ST = GD C = CN [ext] subjectAltName = DNS:www.1111.com,DNS:www.2222.com,DNS:www.3333.com,IP:192.168.1.1
//使用md.cnf创建csr文件 openssl req -new -config md.cnf -key md.key -out md.csr
3.自签名多域名证书 //新建md.ext文件,写入以下内容 subjectAltName = DNS:www.1111.com,DNS:www.2222.com,DNS = www.3333.com,IP:192.168.1.1 //内容和生成csr文件时的md.cnf文件一致 //使用md.ext文件自签名证书 openssl x509 -req -days 365 -in md.csr -signkey md.key -out md.der -extfile md.ext
#附一张我自签发成功,部署在nginx的实例:
#后续更新openssl私有CA签名证书操作教程,留一个传送门《openssl私有CA签名证书教程》
本文链接:https://www.orcy.net.cn/340.html,转载请附上原文出处链接
发表评论