我在VPS上安装了MySQL,我将使用它为客户托管多个数据库,客户将从前端使用它们。
我强制每个数据库的所有通信都是通过SSL进行的,我将为每个不同的客户分别生成一组客户端SSL证书/密钥。
我的问题是: MySQL服务器deamon使用相同的SSL服务器证书/密钥与每个不同的客户进行通信。每个拥有不同客户端证书的客户是否足以确保他们不会窃听到彼此与数据库服务器的通信?
发布于 2011-09-18 13:33:48
简短回答:是的。
较长的答案:是的,因为客户端和服务器键都涉及到交换保护给定事务的当前会话密钥。如果客户端B在客户端A和服务器之间获得完整的密文会话,如果她拥有服务器的私钥或客户端A的私钥,她可以解密。但是客户机B只有自己的私钥和服务器的公钥;这无助于她解密客户端A与服务器之间的事务。
发布于 2011-09-18 14:18:40
据我所知,服务器的SSL/TLS连接足以防止窃听。客户端证书不提供额外的加密(可能在握手期间除外),它是用来验证客户端的。
无论您是否具有客户端证书,客户端和浏览器都将使用它们都支持的最高级别加密进行通信。客户端证书只需确保客户端就是它所说的客户端。
MySQL服务器使用相同的TLS/SSL证书与所有客户端通信是可以的,因为is将与每个客户端进行不同的握手。就像使用web服务器一样,您可以使用相同的证书与多个客户端通信。
https://serverfault.com/questions/312710
复制相似问题