我对 REQUIRE SSL 和 REQUIRE X509 之间有一个模糊的概念,我只是不明白客户端和服务器关系在保护连接方面如何工作。
使用 REQUIRE SSL,从客户端到服务器的连接是安全的,但是如果客户端没有证书可显示,这是怎么发生的?这是否相当于网络浏览器访问具有自签名证书的网站并在查看该网站之前收到接受警告?
如果我使用 REQUIRE X509,这如何帮助服务器验证客户端是我们的客户端之一,或者如果我只安装任何证书则不是这种情况?是否可以配置 X509,以便服务器仅接受具有与服务器相同的证书颁发机构的证书的客户端?
REQUIRE SSL表示客户端需要与服务器建立TLS连接。
REQUIRE X509 表示除了 TLS 连接之外,客户端还必须提供有效的 X509 证书/密钥,该证书/密钥将在 TLS 握手期间由服务器进行验证。无法将服务器配置为接受自签名证书(除非您将客户端证书添加到受信任列表中)。
如果客户端和服务器都成功验证对等证书,则 TLS 连接被认为是安全的。