我正在尝试使用自签名证书在 Linphone Android 中配置 TLS,以便能够与 FreeSWITCH SIP 服务器进行通信。但 SSL 握手失败并出现以下错误:
通道 [0x9ec3c000]:SSL 握手失败:X509 - 证书验证失败,例如CRL、CA 或签名检查失败
无法连接到 [TLS://52.3.207.224:5061]
谁能建议调试此问题的方法是什么?或者我们如何在 Linphone Android 中配置自签名证书。
注意:我不想按照下面的建议禁用 TLS 服务器证书验证
[啜]
验证服务器证书=0
这是因为自签名证书无法被linphone官方预配置的第三方CA识别。
linphone 使用它自己的根 CA 存储列表,当 linphone 从您的 sip 服务器接收到证书时,将验证 linphone 使用的服务器证书。
如果您不想禁用服务器证书验证(最好避免中间人攻击),并且由于 linphone 预配置的 CA 没有可以验证您的证书,您必须创建自己的 CA 并将其添加到 linphone 的 CA 列表中。
您可以在 linphone android 源中找到 CA 列表:res/raw/rootca.pem
只需将您的 CA 添加到其中并重新编译即可。
我不熟悉 linphone,但我认为这是可行的方法。
一些有用的链接:
创建您自己的 SSL 证书颁发机构(并转储自签名证书)
在 Android Linphone 中使用自签名证书
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)