防止UnAuhtorize节点加入Cassandra集群

Prevent UnAuhtorize Node to Join Cassandra Cluster

我正在使用 Apache Cassandra 2.1.2 并创建 5 节点集群。 在 cassandra.yaml 配置文件中,授权方和验证方属性设置为 CassandraAuthorizerPasswordAuthenticator.

它工作完美,但是当其中一些节点配置文件更改为未经授权连接时,该节点可以查询所有密钥空间并轻松读取所有安全数据!

如何保护 Cassandra 密钥空间和数据不被授权客户端(节点)访问?

如果您担心配置文件被重置,您真的应该考虑使用 Puppet or Chef 这样的配置管理软件来保持集群中节点之间的配置同步。

我还强烈建议设置 node-to-node encryption 并在您的 cassandra 节点上设置一个信任库,仅当其他节点提供受信任的证书时才允许它们加入环。

这样你就不会让你不知道的未经授权的节点加入你的环。此外,如果您的配置文件被更改,server_encryption_options 也将失效并且您的节点将无法连接。

如果您担心集群的安全。我还建议在使用授权时使用 client-to-node encryption,因为在没有 SSL 的情况下,当客户端连接时,凭据以明文形式传递。