我正在使用 Cloudera Hadoop 环境。
在过去的几天里,我已经熟悉了 WebHDFS。我正在使用它通过 REST API 执行各种 HDFS 操作。
但是,现在我需要保护与 WebHDFS 的通信,即使用 SSL/HTTPS。
这可能吗 ?如果是,是否有任何明确的步骤来实现这一目标?
PS:目前,我不想使用 Kerberos。
您可以在 hdfs-site.xml 中设置一些属性以启用到名称节点和数据节点的 HTTPS/SSL 连接:
dfs.https.enable
物业dfs.https.server.keystore.resource
和属性(您的 conf 文件夹中有示例 ssl-server 和 ssl-client 文件)dfs.client.https.keystore.resource
您需要在此文件中设置一些属性(并将其 + 您的服务器证书/信任库分发到集群中的 NN 和每个 DN,然后重新启动 HDFS)。
还有一些更详细的解释,这里有一些谷歌出现的链接:
请注意,Kerberos 不会为您提供“安全”通信(如果安全意味着加密),Kerberos 仅提供身份验证机制。