当前位置:   article > 正文

ZooKeeper安全认证机制:SSL_zk ssl truststore 错误

zk ssl truststore 错误

ZooKeeper安全认证机制:SSL

本文探讨ZooKeeper的SSL安全机制。默认情形下,ZooKeeper的网络通信是没有加密的,但ZooKeeper提供了SSL特性,目前仅应用在Client与Server端之间的交互(Server与Server之间的交互尚不支持),且RPC通信协议基于Netty时(ZooKeeper内置的NIO实现中不支持)。

SSL简介

SSL全称为Secure Socket Layer,它是一种介于传输层和应用层的协议,它通过”握手协议”和“传输协议”来解决信息传输的安全问题,它可以被建立在任何可靠的传输层协议之上(例如TCP,但不能是UDP)。SSL协议主要提供如下三方面的能力:

  • 信息的加密传播
  • 校验机制,数据一旦被篡改,通信双方均会立刻发现
  • 身份证书,防止身份被冒充

SSL的基本设计思想:

  1. Client向Server端索要”公钥
  2. Client对获取的”公钥“进行校验
  3. 双方协商生成“会话密钥
  4. 双方基于”会话密钥“进行信息交换

前3步称之为”握手阶段”,”握手阶段”采用”非对称加密“算法。
第4步称之为”传输阶段”,基于”对称加密“算法,”对称加密”算法的性能是远高于”非对称加密”算法的,因此,更适用于大数据量的传输加密。

如何使用

Client端配置

ZooKeeper Client通过配置如下系统属性来启用基于Netty的RPC通信层:

zookeeper.clientCnxnSocket=”org.apache.zookeeper.ClientCnxnSocketNetty”

Client需要设置如下参数来启用安全通信:

zookeeper.client.secure=true

设置了zookeeper.client.secure属性为true以后,意味着Client与Server之间只能通过"secureClientPort"所指定的端口进行交互。
最后,需要配置KeyStore与TrustStore的相关系统属性:

zookeeper.ssl.keyStore.locati

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/983201
推荐阅读
相关标签
  

闽ICP备14008679号