openssl自签名证书教程(单域名证书/泛域名证书/多域名证书)
参考博客:https://www.orcy.net.cn/340.html
openssl自签名证书与私有CA签名证书有区别,本文只讲openssl自签名证书的操作教程,请勿混淆影响理解。
openssl自签名证书教程(单域名证书/泛域名证书/多域名证书)
1 自签名证书
自签名证书一共三个步骤,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的域名依然可以使用,这又是如果做到的呢?
openssl自签名证书教程(单域名证书/泛域名证书/多域名证书)-下一朵云 这是因为我在创建csr文件、自签名证书的时候添加了使用者可选名称如下图,此证书颁发后所有的可选名均可使用,如淘宝,ETAO等大型多域名网站均采用此种方式。
openssl自签名证书教程(单域名证书/泛域名证书/多域名证书)-下一朵云 b.自签多域名证书
1.生成非对称密钥,如单域名证书
2.新建md.cnf文件,从opessl.cnf中复制相关字段到md.cnf并修改
[req]
prompt = no
distinguished_name = dn365
req_extensions = ext
[dn]
CN = www.example.com
emailAddress = [email protected]
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