【发布时间】:2021-03-23 12:10:16
【问题描述】:
我使用组织提供的 TLS 证书设置了一个安全的 NiFi 集群。在访问 UI 时,我收到错误消息“javax.net.ssl.SSLPeerUnverifiedException: Hostname abc.com not verify: certificate: sha256/abc/ abcabc= DN: CN=abc.com, OU=Abc Operations, O=Abc Corporation Limited, C=SG subjectAltNames: [abc.com]"。我参考了链接https://nifi.apache.org/docs/nifi-docs/html/walkthroughs.html#securing-nifi-with-provided-certificates。 在使用 SSL 时启用点对点通信有什么遗漏的吗?
【问题讨论】:
-
服务器证书的主题备用名称是否与您用于访问 NiFi UI 的主机名匹配? DN 或 alt 名称中是否使用了任何通配符?您使用的是什么版本的 NiFi 和什么版本的 Java?
-
NiFi 版本-1.12.1 java 版本-1.8.0_271。证书中给出的主题备用名称是主机名。我正在尝试使用 ipaddress 访问 NiFi UI。 DN 或 alt 名称中未使用通配符。
-
如果 IP 地址不在证书 SAN 中,那么您可能无法使用该 IP 访问它。使用主机名时 UI 是否正常工作?
-
当我设置一个独立的 NiFi 实例时,它可以工作,我可以访问提供 ip 的 UI。当我设置两个节点 NiFi 集群时会出现此问题。 Nifi 在 AWS ec2 实例上运行。这个问题似乎一个节点的证书无法被另一个节点验证。 ec2上节点之间的证书传输是否有任何限制。
-
只要两个证书的 CA 都在两个节点的信任库中,应该没问题。 nifi.properties 值 nifi.cluster.node.address 是 IP 地址还是主机名?这可能还需要与证书的 SAN 匹配(它应该是节点的主机名)。
标签: ssl apache-nifi tls1.2