使用openssl生成自签名ssl证书
使用自签名的证书的网站默认不会被浏览器信任,使用浏览器带打开可能会弹出如下界面,需要在浏览器中点击继续前往或者添加例外
添加的例外可以在Firefox浏览器中如下界面中设置——隐私与安全——证书中进行查看
生成CA私钥
ca.key是证书颁发机构(Certificate Authority,CA)的私钥文件,CA私钥用于签署证书并保护证书颁发机构的安全性。
openssl genrsa -out ca.key 2048
生成CA证书
ca.crt是证书颁发机构(Certificate Authority,CA)的证书文件,CA证书用于签名其他证书,验证证书的合法性。
# 20 年有效期 openssl req -x509 -new -nodes -key ca.key -sha256 -days 7300 -out ca.crt
生成服务器ssl证书私钥
server.key是服务器私钥,用于生成服务器证书、加密通信和验证身份。
openssl genrsa -out server.key 2048
生成服务器ssl证书CSR
server.csr 是指服务器证书签名请求(Certificate Signing Request,CSR)文件。
在创建 SSL/TLS 证书时,CSR 是一个包含有组织或个人身份信息的加密文本块,用于向证书颁发机构(CA)请求签署数字证书。
openssl req -new -sha256 -key server.key -out server.csr
创建域名附加配置文件
cert.ext是域名附加配置文件
extendedKeyUsage=serverAuth subjectAltName=DNS:xx.com,DNS:*.xx.com
使用CA签署服务器ssl证书
server.crt:这是服务器的公钥证书文件。它包含服务器的公钥以及与该公钥相关联的其他信息,比如服务器的域名等
# ssl证书有效期10年 openssl x509 -req -in server.csr -sha256 -days 3650 \ -CAcreateserial -CA ca.crt -CAkey ca.key \ -CAserial serial -extfile cert.ext -out server.crt
查看证书的签署信息
openssl x509 -in server.crt -noout -text
使用CA验证证书是否通过
openssl verify -CAfile ca.crt server.crt server.crt: OK
https://github.com/UnblockNeteaseMusic/server/blob/enhanced/generate-cert.sh
本文只发表于博客园和tonglin0325的博客,作者:tonglin0325,转载请注明原文链接:https://www.cnblogs.com/tonglin0325/p/6179984.html