没有域名的子域名的SSL证书

我在我的内部网中有一个web服务器,可以通过subdomain.domain.com 简单的subdomain访问。 SSL证书是为subdomain.domain.com创build的,只要通过https访问subdomain就会导致警告。

任何想法如何解决? (是的,我不太了解ssl服务器configuration:-)

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

 [server_ca] ... x509_extensions = server_cert [server_cert] ... subjectAltName = @server_alt_names [server_alt_names] DNS.1 = subdomain.domain.com DNS.2 = subdomain 

要validation您的证书,请将其pipe理为openssl x509 -noout -text 。 你应该在输出中看到这样的一行:

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

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