免费 SSL 返回的证书

Certificates returned by free SSL

今天我在我的网站上安装了免费的 ssl 证书,这很简单,但我对此有一些疑问。 FreeSSL 返回三个文件:"private.key"、"certificate.crt"、"ca_bundle.crt"。所以我的问题是:

1) 这个私钥属于谁?这是我的(服务器的)私钥吗?我不这么认为,因为如果那是真的,事实证明免费 SSL 知道我的私钥。

2) "certificate.crt"其实是我服务器的证书吧?

3) "ca_bundle.crt"。这只是中间证书,根证书呢?我不需要 CA 的根证书吗?

Who this private key belonges to? Is this my(server's) private key? I don't think so because if that's true, it turns out that free SSL knows my private key.

如果您从 SSL 供应商那里获得它们,那么是的,它们会传到您的网站,并且 SSL 供应商知道您的私钥,因此它们不再是私有的。这是 CA 供应商的非常糟糕的做法。

"certificate.crt" actually is my server's certificate, right?

是的,它是证书的 public 部分。私处是关键

"ca_bundle.crt". is this only intermediate certificate, what about root certificate? don't I need CA's root certificate?

捆绑包中不需要根 CA 证书,因为它们必须提前安装在客户端浏览器中(通常,浏览器供应商会提供全球信任的根 CA 列表),因此如果您的 SSL 供应商是全球信任的,客户端已经在他们的浏览器中。如果 SSL 供应商不受全局信任(默认情况下不包含在浏览器中),则捆绑包中的根证书将不存在,因为它不受信任(即使它在 SSL/TLS 握手期间出现)并且需要手动步骤将其安装在浏览器中(不推荐用于 public 盟友访问的网站)。