从有效的通配符证书生成子域证书

Cun*_*ing 8 ssl openssl ssl-certificate

给出可以链接的 SSL 证书和密钥的性质,我(我自己)是否可以根据为通配符子域颁发的主域证书和密钥为子域生成证书?

这里的做法是,我必须为一个子域设置一个新的完全不同的远程(物理)服务器,并且我想尽量减少主证书和密钥被劫持的风险,以防万一。

我可以使用提供我的主域、通配符证书和密钥的 openssl 实用程序来做到这一点,还是应该再次由 CA 辞职?如果可以,怎么做?

谢谢

Jen*_*y D 7

首先,我同意散布通配符证书是个坏主意。最佳做法是使用单独的证书(当域位于不同的服务器或虚拟主机上时)或 SAN 证书(当它们都位于同一位置时)。

但是,您不应能够使用现有证书来签署子域的证书。SSL 证书通常在颁发时对其使用方式有限制。如果你运行openssl x509 -in /path/to/cert.pem -noout -text,你会看到一个看起来像

        X509v3 Extended Key Usage: 
            TLS Web Server Authentication, TLS Web Client Authentication
Run Code Online (Sandbox Code Playgroud)

这意味着该证书只能用于验证 Web 服务器或客户端。它不能用于签署其他证书(或者,至少没有客户端会信任由该证书签署的证书)。

您不能这样做的原因是,目前 CA 无法颁发仅可用于对给定域内的其他证书进行签名的证书。因此,如果受信任的 CA 为您提供可用于签署其他证书的证书,它们实际上将使您能够模拟 Internet 上的任何其他站点。这会很糟糕,这就是他们不这样做的原因。