总的来说有三种方式。生成得到的server.crt证书格式都是pem的。
1. 私钥👉证书
# 生成私钥
openssl genrsa -out server.key 1024
# 用私钥生成证书
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"
2. 私钥👉证书申请文件👉证书
# 生成私钥
openssl genrsa -out server.key 1024
# 用私钥生成证书申请文件csr。会进入交互模式(填写地区等信息)
openssl req -new -key server.key -out server.csr
# 用私钥对证书申请进行签名从而生成证书
openssl x509 -req -in server.csr -out server.crt -signkey server.key -days 3650
3. 👉证书(一步到位)
openssl req -new -x509 -keyout server.key -out server.crt -config openssl.cnf
参考:https://ningyu1.github.io/site/post/51-ssl-cert/