将cqlsh与ssl一起使用
我已在我的cassandra节点中启用了ssl加密,我正在尝试找出如何使用带有ssl的cqlsh连接到我的节点: 当我运行将cqlsh与ssl一起使用,ssl,cassandra,datastax,cqlsh,Ssl,Cassandra,Datastax,Cqlsh,我已在我的cassandra节点中启用了ssl加密,我正在尝试找出如何使用带有ssl的cqlsh连接到我的节点: 当我运行/cqlsh--ssl时,我得到以下错误: Validation is enabled; SSL transport factory requires a valid certfile to be specified. Please provide path to the certfile in [ssl] section as 'certfile' option in /r
/cqlsh--ssl
时,我得到以下错误:
Validation is enabled; SSL transport factory requires a valid certfile to be specified. Please provide path to the certfile in [ssl] section as 'certfile' option in /root/.cassandra/cqlshrc (or use [certfiles] section) or set SSL_CERTFILE environment variable.
我关注了以下链接:
我保存在根文件夹中,以便任何用户都可以登录并访问公用文件夹(而不是我的用户目录)。但是,在这种情况下,密码是什么?我需要输入密码吗
certfile = ~/keys/node0.cer.pem
我需要将此证书文件添加到cassandra的信任库中,还是只添加cassandra节点证书本身
我正在使用Cassandra 2.2.7。要使这项工作正常运行,需要做一些事情: 但是,在这种情况下,密码是什么?我需要输入密码吗
certfile = ~/keys/node0.cer.pem
在cqlshrc文件中,这是指用于身份验证/授权的用户名和密码。你真的不需要在这里添加它。如果没有,请记住在cqlsh命令行上指定-u username-p password
标志
我需要将此证书文件添加到cassandra的信任库中,还是只需添加cassandra节点证书本身
对于客户端到节点SSL,您实际上不需要使用truststore
如果您按照上述文档中的步骤操作,您的密钥库文件中应该已经有证书的私钥部分。然后,您将该证书的公共部分导出到一个文件中。然后将该文件转换为PKCS12文件,以便与cqlsh一起使用。根据上面使用的文件名判断,看起来您已经这样做了
例如,下面是一个示例cqlshrc文件,该文件应连接到2.2.x群集:
[connection]
factory = cqlshlib.ssl.ssl_transport_factory
[ssl]
certfile = ~/certs/dev-cluster1.cer.pem
validate = false
[authentication]
username = cassuser
password = 12345
确保您正在设置
ssl\u transport\u factory
,有趣的是,如果我的用户名和密码不正确,它仍然可以工作!但如果它丢失了,它仍然要求输入用户名和密码。你认为会有什么问题?