我可以在其他HTTPS服务器上使用自签名X.509证书吗?

时间:2011-11-10 02:44:53

标签: iis iis-7 ssl

我在server1上使用Selssl7.exe创建了我的SSL证书,但是使用Cn作为Server2并在server2上托管了证书。从linux firefox浏览时我开始收到证书错误:

  

此证书无效,证书不受信任且自签名,证书仅对server1有效

但是,当我从Windows IE浏览URL时,我只是得到常规错误,说它不受信任,我可以轻松地将其添加到异常中。

我们可以在不同服务器上使用server1上生成的自签名证书吗?

1 个答案:

答案 0 :(得分:0)

你可以和你一样,但你通过这样做几乎破坏了真实性的每一个方面。

自签名证书通常是一个问题,因为其他用户不会提前知道此证书。所以他们的浏览器尽职尽责地发出警告。这就是您必须支付将被识别的TLS证书的原因 - 它们由CA颁发,其证书包含在浏览器的默认信任库中。 CA必须支付“成为俱乐部的一部分”,否则,任何人都可以创建证书。这只是被默认设置识别的问题。

但是,您通过重用在不同服务器上为专用服务器颁发的证书来打开另一个漏洞。 TLS证书的主题专有名称必须与其部署的服务器的主机名相匹配。这是TLS规范的强制要求,因为这是在使用TLS时防止中间人攻击的唯一有效措施。打开与服务器的TLS连接后,您的代码将检查您连接的主机名是否与发送的服务器证书的主题DN相匹配。只有这样,您才能确保与正确的服务器通话。

因此,总而言之,如果您在其他主机上重用服务器证书,那么您将严重影响TLS的安全性。当然,这仍然是可能的,但是如果你将安全性削弱到这个程度,那么你最好首先使用普通的HTTP。