gpt4 book ai didi

hortonworks-data-platform - UI 未在 nifi 1.0.0 安全集群中打开

转载 作者:行者123 更新时间:2023-12-04 08:45:02 25 4
gpt4 key购买 nike

按照以下链接中的说明尝试在 nifi 1.0.0 中形成安全集群

http://bryanbende.com/development/2016/08/17/apache-nifi-1-0-0-authorization-and-multi-tenancy

我已经在目标文件夹中生成了 keystore 和 truststore 文件,来自 nifi-cert.pem 和 nifi-key.key 我已经生成了 p12 文件并将其加载到浏览器中

启动nif实例后,节点已经连接并在它们之间交换心跳信号,指定的端口正在监听它们的编号但是当我们启动UI时,它不是在浏览器中查看 enter image description here

更新: enter image description here

更新: enter image description here enter image description here

更新: enter image description here

更新:由于 org.apache.nifi.cluster.protocol.ProtocolException:响应消息类型失败的编码协议(protocol)消息:CONNECTION_REQUEST 由于 java.net.SocketException:软件导致连接中止:套接字写入错误org.apache.nifi.cluster.protocol.ProtocolException:响应消息类型失败的编码协议(protocol)消息:CONNECTION_REQUEST 由于 java.net.SocketException:软件导致连接中止:套接字写入错误 在 org.apache.nifi.cluster.protocol.impl.SocketProtocolListener.dispatchRequest(SocketProtocolListener.java:176)~[nifi-framework-cluster-protocol-1.0.0.jar:1.0.0] 在 org.apache.nifi.io.socket.SocketListener$2$1.run(SocketListener.java:136) [nifi-socket-utils-1.0.0.jar:1.0.0] 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_91] 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_91] 在 java.lang.Thread.run(Thread.java:745) [na:1.8.0_91]

最佳答案

您可以采取几个步骤来继续调试:

  • 在启用 Java TLS (SSL) 调试的情况下运行 NiFi。在 conf/bootstrap.conf添加行 java.arg.15=-Djavax.net.debug=ssl,handshake (确保 15 是一个与您现有的参数列表不冲突的数字)。这将增加大量日志输出,但会明确记录任何 TLS 握手协商尝试。
  • 使用 OpenSSL s_client调试连接的工具。运行以下命令将尝试与附加日志输出进行握手协商:$ openssl s_client -connect <host:port> -debug -state -cert <path_to_your_cert.pem> -key <path_to_your_key.pem> -CAfile <path_to_your_CA_cert.pem>
    • 用您的服务器替换 <host:port>
    • 用您的公钥证书替换 <path_to_your_cert.pem>
    • 将您的私钥替换为 <path_to_your_key.pem>
    • 用服务器的公钥证书或 CA 公钥证书替换 <path_to_your_CA_cert.pem>您可以使用以下命令从 PKCS12 keystore 中提取公钥证书和私钥
      • 提取私钥:$ openssl pkcs12 -in CN\=Andy_LoPresto_OU\=Apache_NiFi.p12 -nocerts -out client.key
      • 提取公钥:$ openssl pkcs12 -in CN\=Andy_LoPresto_OU\=Apache_NiFi.p12 -clcerts -nokeys -out client.pem

正如@bryan-bende 上面指出的那样,您共享的浏览器屏幕截图中的错误消息似乎确实表明由于协议(protocol)版本不兼容而无法协商 TLS 密码套件。上面的命令将输出连接的所有可用密码套件。您还可以使用类似 CipherScan 的工具明确列举这些。

一个可能的问题是 Java 7 默认为 TLS 1.0,而 Java 8 默认为 TLS 1.2。您使用什么操作系统和 JRE 来托管 NiFi?

在极少数情况下,用户使用实际上不包含 RSA key 的 keystore 部署 NiFi,并且 TLS 握手协商失败,因为“没有可用的密码套件”,而问题实际上是所有可用的密码套件需要一个 RSA key (如果不加密实际的 channel 数据,至少要签署临时 key )。您能否验证您提供给 NiFi 的 keystore 是否有可用的有效私钥(还要检查日期)?

希望这些步骤可以帮助您诊断问题。如果您能提供更多信息,我们很乐意与您合作进一步调查。

关于hortonworks-data-platform - UI 未在 nifi 1.0.0 安全集群中打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39659026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com