第一种方式
通过openssl生成私钥
openssl genrsa -out server.key 2048
使用私钥生成自签名的cert证书文件,以下是通过参数只定证书需要的信息
openssl req -new -x509 -days 3650 -key server.key -out server.crt -subj "/C=CN/ST=mykey/L=mykey/O=mykey/OU=mykey/CN=domain1/CN=domain2/CN=domain3"
如果对上面参数具体的说明不太了解的,可以使用不带参数的方式,通过命令行步骤生成,参考第二种方式。
第二种方式
通过openssl生成私钥
openssl genrsa -out server.key 2048
根据私钥生成证书申请文件csr
openssl req -new -key server.key -out server.csr
这里根据命令行向导来进行信息输入:
ps.Common Name可以输入:*.yourdomain.com,这种方式生成通配符域名证书
使用私钥对证书申请进行签名从而生成证书
openssl x509 -req -in server.csr -out server.crt -signkey server.key -days 3650
这样就生成了有效期为:10年的证书文件,对于自己内网服务使用足够。
第三种方式
直接生成证书文件
openssl req -new -x509 -keyout server.key -out server.crt -config openssl.cnf
ps.以上生成得到的server.crt证书,格式都是pem的。
我个人比较推荐使用第二种方式,如果不在乎其他参数可以使用第三种直接一步生成。
生成证书链,请参考这篇文章 https://www.php3.cn/a/406.html