我根据此规范创建了自己的证书颁发机构和服务器(虚拟主机)证书:https://jamielinux.com/docs/openssl-certificate-authority/index.html
它已成功创建,并且可以运行,但是如果没有“www”前缀,服务器证书就无法运行。
如果我加载没有“www”的域名,则会出现错误:
SSL 错误代码:BAD_CERT_DOMAIN
我查了好几页长的内容,选项里会有(SAN——主题备用名称),就是不知道如何插入上面的配置。
答案1
您的 SSL 证书仅对 www.example.com 有效。如果您希望访问 example.com,则有以下选项:
- 使用 2 个证书和 2 个虚拟主机。一个用于 www.example.com,另一个用于 example.com
注意:您不能使用通配符证书来实现此目的,因为 example.com 前面没有任何内容(它适用于 xyz.example.com)。
答案2
我将此行添加到中间 CA 配置文件中:
在'server_cert'部分中:
subjectAltName = @dns_names
并添加新的部分:
[ dns_names ]
DNS.0 = *.example.com
DNS.1 = example.com
DNS.2 = www.example.com
我的问题解决了!