SSL服务器证书是否绑定到特定计算机?

SSL服务器证书是否绑定到特定计算机?,ssl,ssl-certificate,Ssl,Ssl Certificate,最近,我们用tomcat创建了一个服务器,我们还为这个小服务器添加了SSL支持。对于SSL支持,我们需要由第三方颁发的证书,如Trust、Thawte等 一位同事对我说,证书绑定到特定的机器。一旦我们获得了颁发的证书,那么这个证书就不能在其他机器上使用 我完全怀疑这一点,因为CSR不包含机器的任何信息。这是真的吗 谢谢证书不一定绑定到特定的计算机。为了能够在计算机上“使用证书”,您需要两样东西:证书本身和它的私钥。您应该与CSR一起生成私钥(取决于您使用的工具) 某些系统不允许您重新提取私钥(例

最近,我们用tomcat创建了一个服务器,我们还为这个小服务器添加了SSL支持。对于SSL支持,我们需要由第三方颁发的证书,如Trust、Thawte等

一位同事对我说,证书绑定到特定的机器。一旦我们获得了颁发的证书,那么这个证书就不能在其他机器上使用

我完全怀疑这一点,因为CSR不包含机器的任何信息。这是真的吗


谢谢

证书不一定绑定到特定的计算机。为了能够在计算机上“使用证书”,您需要两样东西:证书本身和它的私钥。您应该与CSR一起生成私钥(取决于您使用的工具)

某些系统不允许您重新提取私钥(例如,Windows有一个选项,可以以您无法再导出的方式导入私钥,但据我所知,如果您在该计算机上拥有足够的访问权限,则可以绕过此选项)。在使用智能卡或硬件令牌的情况下,私钥可能会以无法提取的方式生成(在这种情况下,如果需要,将令牌移动到新机器上是有意义的)


另一部分是证书及其名称。证书中的主机名(通常也可以在CSR中找到,尽管这最终不是必需的)应该是这台机器的主机名,正如试图连接到它的客户端所看到的(有关HTTPS主机名验证的详细信息,请参阅RFC 2818第3.1节)。因此,尽管证书本身在硬件方面没有绑定到特定的机器,但它将绑定到此主机名(例如,允许您更改此机器的硬件或其IP地址)。

因此,这意味着证书绑定到主机名。那么我怎样才能在证书中看到主机名呢?是CN吗?另一个问题是SSL客户端是否总是需要主机名检查?(我不这么认为)如果有DNS主题的备选名称,则主机名可以是其中任何一个。否则,它就是主题DN中的CN。SSL客户端应始终检查主机名(有些不检查,但这使它们容易受到MITM攻击——不验证主机名应视为安全漏洞)。感谢您的解释!一些SSL提供商在非技术性方面强制执行这一点——您从他们那里购买了一个服务器许可证,并在合同上同意只在一个服务器上使用它。