我正在设置一个免费的 cloudflare 帐户,但我不确定这意味着什么(对于完整 SSL):
“您的服务器上需要有 SSL 证书。但是,CloudFlare 不会尝试验证证书(证书可以是自签名的)。[完整和完整(严格)之间的区别在于,完整(严格)会检查您的原始服务器上是否存在有效证书,而完整会检查任何证书。]”
我不知道他们说的“您需要在服务器上拥有 SSL 证书”到底是什么意思。我使用的是共享主机托管计划,无法控制服务器。CloudFlare 会查找主机在服务器上拥有的(任何)证书吗?这样就够了吗?有点不确定要查找或询问什么。
答案1
满的
任何证书都可以使用。这意味着可以使用自签名证书。如果您正在运行证书颁发机构,证书也可以从那里使用。这种方法将加密 Cloudflare 和您的服务器之间的所有流量,但不会进行验证。这意味着不会进行检查以确保它直接与您的服务器通信,也不会检查撤销列表。这将使连接容易受到 MitM 攻击。
完整(严格)
您服务器上的证书需要来自受信任的证书颁发机构。这是因为 Cloudflare 将验证证书以确保它直接与您的服务器通信并且证书仍然有效。
Cloudflare 博客
以下条目很好地详细解释了这一点。
答案2
我没有使用过 cloudfare,所以我不能 100% 确定,但在我使用过的其他共享托管平台上,您可以将所需的证书文件上传到网站的根目录。
它的意思是,您要么必须对任何证书(例如,自我签名)使用“完整”模式,要么必须从适当的证书颁发机构(如 start ssl 或类似的机构)获取证书才能使用“完整(严格)”模式。
如果你制作了自签名证书,上传后尝试使用“完整(严格)”,则会失败,因为你的 PC 不是合法的证书颁发机构