如何使用 TLS/SSL 连接 xmpp 服务器?
Posted
技术标签:
【中文标题】如何使用 TLS/SSL 连接 xmpp 服务器?【英文标题】:How to connect xmpp server using TSL/SSL? 【发布时间】:2017-10-29 06:05:23 【问题描述】:我正在使用 smack 4.2.1 连接 xmpp 服务器,但是当我运行代码时,服务器会响应以下消息。 我真的知道是 tsl/ssl config 引起的错误。但我不知道如何解决。
XMPPTCPConnectionConfiguration conf = XMPPTCPConnectionConfiguration.builder()
.setXmppDomain("404.city").setUsernameAndPassword("xx", "xxxx")
.setCompressionEnabled(false)
.setSecurityMode(ConnectionConfiguration.SecurityMode.required)
.build();
XMPPTCPConnection connection = new XMPPTCPConnection(conf);
connection.connect();
org.jivesoftware.smack.SmackException:javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException:PKIX 路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到请求的有效证书路径目标 在 org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1060) 在 org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:982) 在 org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:998) 在 java.lang.Thread.run(Thread.java:745)
【问题讨论】:
【参考方案1】:我自己修好了.... 我应该为配置设置一个 SSLContext
【讨论】:
您能分享一下您是如何设置 sslContext 的吗?以上是关于如何使用 TLS/SSL 连接 xmpp 服务器?的主要内容,如果未能解决你的问题,请参考以下文章
ssl.SSLZeroReturnError: TLS/SSL 连接已关闭 (EOF) (_ssl.c:661)
C# - 使用 feck 的 TLS / SSL Websockets
C++ Boost asio (OpenSSL) 获取活动连接的密码和 TLS/SSL 版本