无域名的子域名 SSL 证书

无域名的子域名 SSL 证书

我的内联网中有一个网络服务器,可以通过以下方式访问subdomain.domain.com 简单来说subdomain。创建了 SSL 证书,因此subdomain.domain.com当我仅通过 https 访问时会出现警告subdomain

知道如何解决这个问题吗?(是的,我不太了解 SSL 服务器配置:-)

答案1

您可以在签名时简单地将备用名称添加到证书中。例如,如果您使用 OpenSSL 并server_ca在签名时使用部分(例如openssl ca -config my.conf -name server_ca -in server.req -out server.crt),请确保在签名时使用的配置文件中有一个类似于以下内容的部分:

[server_ca]
...
x509_extensions = server_cert

[server_cert]
...
subjectAltName = @server_alt_names

[server_alt_names]
DNS.1 = subdomain.domain.com
DNS.2 = subdomain

要验证您的证书,请将其传输到openssl x509 -noout -text。您应该在输出中看到如下一行:

        X509v3 Subject Alternative Name: 
            DNS:subdomain.domain.com, DNS:subdomain

我看到了关于 SNI 的评论,但如果您只是签署证书,SNI 根本无关紧要(只要两个名称应该指向相同的内容)。此方法肯定适用于 Firefox 和 IE,但对 Chrome 和 wget 则完全无效。事实上,如果您将名称列为备用名称,证书中的 CN 甚至无关紧要。

相关内容