使用 Wireshark 解码 TLS 调用时出现问题

Having issues decoding TLS call with Wireshark

我的供应商是 运行 Asterisk 11,后端是 pjsip。我正在尝试使用 Blink 桌面为 Windows 作为客户端设置安全通信。它使用 TLS 注册,但无法进行调用并出现以下错误:

SDP Negotiation failed: No active media stream after negotiation (PJSIP_SDPNEG_ENOMEDIA) error screenshot

Asterisk 似乎正在使用 Let's Encrypt 证书,我可以在 PJSIP 设置中看到它。

[transport-secure-tpl](!)
cert_file=/etc/asterisk/asterisk.pem
priv_key_file=/etc/asterisk/asterisk.pem
cipher=ECDHE-RSA-AES128-GCM-SHA256,ECDHE-ECDSA-AES128-GCM-SHA256,ECDHE-RSA-AES128-SHA256,ECDHE-ECDSA-AES128-SHA256,ECDHE-RSA-AES128-SHA,ECDHE-ECDSA-AES128-S$
method=sslv23

我下载了这个文件,并在 Blink 设置中使用了 TLS 证书。我还使用同一个文件尝试使用 Wireshark 解码数据包,以查看可能存在的问题并且无法解码。 Wireshark settings Wireshark Screenshot

这里是 Wireshark 调试日志: Wireshark SSL 调试日志

Wireshark version: 3.2.0 (v3.2.0-0-ge0ed4cfa3d72)
GnuTLS version:    3.6.3
Libgcrypt version: 1.8.3

KeyID[20]:
| 94 2b a5 28 69 30 b0 e7 af 90 4c 23 44 5f 2f d2 |.+.(i0....L#D_/.|
| 7a 57 a2 76                                     |zW.v            |
ssl_init private key file C:/Users/user/Downloads/cert - private.pem successfully loaded.
ssl_init port '5061' filename 'C:/Users/user/Downloads/cert - private.pem' password(only for p12 file) ''
association_add tls.port port 5061 handle 0000025C956BD270

dissect_ssl enter frame #19 (already visited)
packet_from_server: is from server - FALSE
  conversation = 0000025C90850440, ssl_session = 0000000000000000
  record: offset = 0, reported_length_remaining = 256
dissect_ssl3_record: content_type 22 Handshake
dissect_ssl3_handshake iteration 1 type 1 offset 5 length 247 bytes 

我做错了什么?

是的,TLS 连接旨在防止 "decode" 像第三方那样。

这是连接的主要目标。

所以你不应该期望解码它。

相反,您可以在 asterisk 上进行 sip 调试。

这个问题似乎比我原先想象的要难。我最终从 Asterisk 捕获了流量,现在有了我需要的东西。