【问题标题】:apache cassandra SSL using public certificate authority?apache cassandra SSL 使用公共证书颁发机构?
【发布时间】:2020-10-14 07:39:11
【问题描述】:

我正在尝试建立节点到节点的加密。我正在关注以下链接上可用于 ssl 加密的 datastax 在线指南-https://docs.datastax.com/en/security/5.1/security/secSetUpSSLCert.html 根据文档,我跳过了前两个步骤,然后从第 3 步开始。

所以,我已经创建了密钥库,使用以下命令-

keytool -genkeypair -keyalg RSA -alias node1 -keystore cassandra.jks -storepass cass123 -keypass cass123 -validity 365 -keysize 2048 -dname "CN=host1, OU=cluster1, O=org, C=US"

创建密钥库后,这里的公共证书颁发机构有两个级别的加密或证书。第一个是root.cert,另一个是intermediate.cert。 当我通过以下命令检查时,intermediate.cert 由 root.cert 签名或验证。

openssl verify -CAfile root.cert intermediate.cert , Got OK in Response.

在使用密钥库(cassandra.jks)之后,我提出了证书签名请求(CSR):

 keytool -keystore cassandra.jks -alias node1 -certreq -file cassandra.csr -keypass cass123 -storepass cass123 -dname "CN=host1, OU=cluster1, O=org, C=US"

然后在将此 CSR 文件 (cassandra.csr) 上传到公共证书颁发机构后,我得到了一个 Cert.cer 文件的响应。

所以,然后我检查了 Cert.cer 文件是否由 root.cert 签名。

openssl verify -CAfile root.cert Cert.cer 

无法在响应中加载证书,并带有错误消息-

140044398696338:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c707:Expecting TRUSTED CERTIFICATE

即使我已经检查了带有 intermediate.cert 的 Cert.cer——也得到了与上述相同的错误消息。

这是否意味着我响应 csr 请求而得到的 Cert.cer 没有得到证书颁发机构的正确签名。

所以我在这里停止了进一步的步骤,这是实现 cassandra ssl 所需的。

如果我错过了什么或做错了事,请告诉我。非常感谢所有帮助和建议

【问题讨论】:

标签: openssl ssl-certificate keystore datastax cassandra-3.0


【解决方案1】:

此问题已解决,由于平台问题生成的证书具有额外的回车字符 ^M。删除它并将根证书和中间证书合并在一起后,它工作正常。

【讨论】:

    猜你喜欢
    • 2015-08-09
    • 1970-01-01
    • 1970-01-01
    • 2014-12-26
    • 2011-01-10
    • 2018-06-19
    • 1970-01-01
    • 2011-09-24
    相关资源
    最近更新 更多