[Freeswitch-users] dtls-srtp problem with firefox 84.0.2

Stefan gidoramothra at gmail.com
Fri Jan 22 13:05:00 UTC 2021


Hi, I have a problem getting verto-communicator and/or mod_verto running
with firefox.

It works with chromium-based browsers without problems, but it
looks to me (that means: I don't know exactly, but I suspect) as if the
ciphersute to get the key for srtp is not perfect-forward-secure. Maybe
that's the reason for firefox to fail, but I couldn't find any
documented way to change the ciphersuite, neither in mod_verto, nor in
mod_rtc (perhaps I oversee something).

What I attach here are two logs. The first is the successful call to a
conference witch edge (chromium based), the second is the try to do the
same with firefox. Both logs begin at the same point, where verto does
the state change CS_ROUTING -> CS_EXECUTE, the whole logs only differ
after this point.

Can anyone help me? In case it matters: the certs are from letsencrypt.

__
s.

-------------- next part --------------
2021-01-22 09:33:32.288018 [DEBUG] switch_core_state_machine.c:287 (verto.rtc/31000) State Change CS_ROUTING -> CS_EXECUTE
2021-01-22 09:33:32.288018 [DEBUG] switch_core_state_machine.c:644 (verto.rtc/31000) State ROUTING going to sleep
2021-01-22 09:33:32.288018 [DEBUG] switch_core_state_machine.c:585 (verto.rtc/31000) Running State Change CS_EXECUTE (Cur 1 Tot 1)
2021-01-22 09:33:32.288018 [DEBUG] switch_core_state_machine.c:651 (verto.rtc/31000) State EXECUTE
2021-01-22 09:33:32.288018 [DEBUG] mod_rtc.c:120 verto.rtc/31000 RTC EXECUTE
2021-01-22 09:33:32.288018 [DEBUG] switch_core_state_machine.c:329 verto.rtc/31000 Standard EXECUTE
EXECUTE [depth=0] verto.rtc/31000 set(rtp_secure_media=mandatory)
2021-01-22 09:33:32.288018 [CONSOLE] sofia_presence.c:1619 Event Thread Started
2021-01-22 09:33:32.288018 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000 [rtp_secure_media]=[mandatory]
EXECUTE [depth=0] verto.rtc/31000 export(rtp_secure_media=mandatory)
2021-01-22 09:33:32.288018 [DEBUG] switch_channel.c:1310 EXPORT (export_vars) [rtp_secure_media]=[mandatory]
EXECUTE [depth=0] verto.rtc/31000 set(codec_string=G722)
2021-01-22 09:33:32.288018 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000 [codec_string]=[G722]
EXECUTE [depth=0] verto.rtc/31000 answer()
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [opus:111:48000:20:0:2]/[G722:9:8000:20:64000:1]
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [ISAC:103:16000:30:32000:1]/[G722:9:8000:20:64000:1]
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [ISAC:104:32000:30:32000:1]/[G722:9:8000:20:64000:1]
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5649 Audio Codec Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [CN:106:32000:20:0:1]/[G722:9:8000:20:64000:1]
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [CN:105:16000:20:0:1]/[G722:9:8000:20:64000:1]
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [CN:13:8000:20:0:1]/[G722:9:8000:20:64000:1]
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5510 Set telephone-event payload to 110 at 48000
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:3839 Set Codec verto.rtc/31000 G722/8000 20 ms 160 samples 64000 bits 1 channels
2021-01-22 09:33:32.307889 [DEBUG] switch_core_codec.c:111 verto.rtc/31000 Original read codec set to G722:9
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:4284 Save audio Candidate cid: 1 proto: udp type: host addr: 192.168.1.112:58547
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:4284 Save audio Candidate cid: 1 proto: udp type: srflx addr: 93.104.12.213:58547
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:4329 Searching for rtp candidate.
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:4338 Choose rtp candidate, index 1, 93.104.12.213:58547
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:4104 verto.rtc/31000 choosing family v4
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:4349 Choose same candidate, index 0, for rtcp based on rtcp-mux attribute 93.104.12.213:58547
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:4401 setting remote audio ice addr to index 1 93.104.12.213:58547 based on candidate
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:4436 Setting remote rtcp audio addr to 93.104.12.213:58547 based on candidate
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5853 Set telephone-event payload to 126 at 8000
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:5911 verto.rtc/31000 Set 2833 dtmf send payload to 126 recv payload to 126
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:6239 No matches with FTMP, fallback to ignoring FMTP
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:6247 No matches with inherit_codec, fallback to ignoring PT
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:8663 AUDIO RTP [verto.rtc/31000] 46.4.114.220 port 24164 -> 93.104.12.213 port 58547 codec: 9 ms: 20
2021-01-22 09:33:32.307889 [DEBUG] switch_rtp.c:4450 Starting timer [soft] 160 bytes per 20ms
2021-01-22 09:33:32.307889 [INFO] switch_core_media.c:8845 Activating Audio ICE
2021-01-22 09:33:32.307889 [NOTICE] switch_rtp.c:4952 Activating RTP audio ICE: Aw7j:eTMUc5TXONdQPFuX 93.104.12.213:58547
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:8885 Activating RTCP PORT 58547
2021-01-22 09:33:32.307889 [DEBUG] switch_rtp.c:4848 RTCP send rate is: 1000 and packet rate is: 20000 Remote Port: 58547
2021-01-22 09:33:32.307889 [INFO] switch_core_media.c:8896 Skipping RTCP ICE (Same as RTP)
2021-01-22 09:33:32.307889 [INFO] switch_rtp.c:3764 Activate RTP/RTCP audio DTLS client
2021-01-22 09:33:32.307889 [INFO] switch_rtp.c:3927 Changing audio DTLS state from OFF to HANDSHAKE
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:2554 Setting Jitterbuffer to 20ms (1 frames) (50 max frames)
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:8977 verto.rtc/31000 Set 2833 dtmf send payload to 126
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:8984 verto.rtc/31000 Set 2833 dtmf receive payload to 126
2021-01-22 09:33:32.307889 [DEBUG] switch_core_media.c:8645 Audio params are unchanged for verto.rtc/31000.
2021-01-22 09:33:32.307889 [DEBUG] mod_verto.c:2518 Local SDP verto.rtc/31000:
v=0
o=FreeSWITCH 1611283848 1611283849 IN IP4 46.4.114.220
s=FreeSWITCH
c=IN IP4 46.4.114.220
t=0 0
a=msid-semantic: WMS Ngpso7aRbsoTpMLXCeAoPst8US4qbbBO
m=audio 24164 UDP/TLS/RTP/SAVPF 9 126
a=rtpmap:9 G722/8000
a=rtpmap:126 telephone-event/8000
a=silenceSupp:off - - - -
a=ptime:20
a=sendrecv
a=fingerprint:sha-256 5B:B0:37:08:CA:B3:02:48:CB:B6:1C:9C:A0:C9:66:1C:1D:A2:5F:25:95:59:25:6D:92:A5:80:6C:FB:79:EA:72
a=setup:active
a=rtcp-mux
a=rtcp:24164 IN IP4 46.4.114.220
a=ice-ufrag:eTMUc5TXONdQPFuX
a=ice-pwd:mrk0poGFG5bB6uZbdCVgxF3c
a=candidate:4690159198 1 udp 659136 46.4.114.220 24164 typ host generation 0
a=end-of-candidates
a=ssrc:2953804084 cname:iR7wO7ePqszF4asx
a=ssrc:2953804084 msid:Ngpso7aRbsoTpMLXCeAoPst8US4qbbBO a0
a=ssrc:2953804084 mslabel:Ngpso7aRbsoTpMLXCeAoPst8US4qbbBO
a=ssrc:2953804084 label:Ngpso7aRbsoTpMLXCeAoPst8US4qbbBOa0
m=video 0 UDP/TLS/RTP/SAVPF 19

2021-01-22 09:33:32.307889 [NOTICE] mod_dptools.c:1406 Channel [verto.rtc/31000] has been answered
2021-01-22 09:33:32.307889 [DEBUG] switch_channel.c:3865 (verto.rtc/31000) Callstate Change RINGING -> ACTIVE
EXECUTE [depth=0] verto.rtc/31000 conference(friends_16kHz at 16kHz-novideo+2357+flags{moderator|mute-detect})
2021-01-22 09:33:32.307889 [DEBUG] mod_conference.c:3414 using channel sound prefix: /usr/share/freeswitch/sounds/en/us/callie
2021-01-22 09:33:32.307889 [DEBUG] mod_conference.c:228 Setup timer success interval: 20  samples: 320
2021-01-22 09:33:32.348029 [DEBUG] mod_verto.c:607 WRITE 93.104.12.213:50500 [{
	"jsonrpc":	"2.0",
	"id":	2,
	"method":	"verto.answer",
	"params":	{
		"callID":	"87c1011e-026b-df48-300f-fa07399f1f65",
		"sdp":	"v=0\r\no=FreeSWITCH 1611283848 1611283849 IN IP4 46.4.114.220\r\ns=FreeSWITCH\r\nc=IN IP4 46.4.114.220\r\nt=0 0\r\na=msid-semantic: WMS Ngpso7aRbsoTpMLXCeAoPst8US4qbbBO\r\nm=audio 24164 UDP/TLS/RTP/SAVPF 9 126\r\na=rtpmap:9 G722/8000\r\na=rtpmap:126 telephone-event/8000\r\na=silenceSupp:off - - - -\r\na=ptime:20\r\na=sendrecv\r\na=fingerprint:sha-256 5B:B0:37:08:CA:B3:02:48:CB:B6:1C:9C:A0:C9:66:1C:1D:A2:5F:25:95:59:25:6D:92:A5:80:6C:FB:79:EA:72\r\na=setup:active\r\na=rtcp-mux\r\na=rtcp:24164 IN IP4 46.4.114.220\r\na=ice-ufrag:eTMUc5TXONdQPFuX\r\na=ice-pwd:mrk0poGFG5bB6uZbdCVgxF3c\r\na=candidate:4690159198 1 udp 659136 46.4.114.220 24164 typ host generation 0\r\na=end-of-candidates\r\na=ssrc:2953804084 cname:iR7wO7ePqszF4asx\r\na=ssrc:2953804084 msid:Ngpso7aRbsoTpMLXCeAoPst8US4qbbBO a0\r\na=ssrc:2953804084 mslabel:Ngpso7aRbsoTpMLXCeAoPst8US4qbbBO\r\na=ssrc:2953804084 label:Ngpso7aRbsoTpMLXCeAoPst8US4qbbBOa0\r\nm=video 0 UDP/TLS/RTP/SAVPF 19\r\n"
	}
}]
-------------- next part --------------
2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:287 (verto.rtc/31000) State Change CS_ROUTING -> CS_EXECUTE
2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:644 (verto.rtc/31000) State ROUTING going to sleep
2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:585 (verto.rtc/31000) Running State Change CS_EXECUTE (Cur 1 Tot 1)
2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:651 (verto.rtc/31000) State EXECUTE
2021-01-21 15:36:48.773228 [DEBUG] mod_rtc.c:120 verto.rtc/31000 RTC EXECUTE
2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:329 verto.rtc/31000 Standard EXECUTE
EXECUTE [depth=0] verto.rtc/31000 set(rtp_secure_media=mandatory)
2021-01-21 15:36:48.773228 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000 [rtp_secure_media]=[mandatory]
2021-01-21 15:36:48.773228 [CONSOLE] sofia_presence.c:1619 Event Thread Started
EXECUTE [depth=0] verto.rtc/31000 export(rtp_secure_media=mandatory)
2021-01-21 15:36:48.773228 [DEBUG] switch_channel.c:1310 EXPORT (export_vars) [rtp_secure_media]=[mandatory]
EXECUTE [depth=0] verto.rtc/31000 set(codec_string=G722)
2021-01-21 15:36:48.773228 [DEBUG] mod_dptools.c:1672 SET verto.rtc/31000 [codec_string]=[G722]
EXECUTE [depth=0] verto.rtc/31000 answer()
2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [opus:109:48000:20:0:2]/[G722:9:8000:20:64000:1]
2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [G722:9:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5649 Audio Codec Compare [G722:9:8000:20:64000:1] ++++ is saved as a match
2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [PCMU:0:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5594 Audio Codec Compare [PCMA:8:8000:20:64000:1]/[G722:9:8000:20:64000:1]
2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5510 Set telephone-event payload to 101 at 8000
2021-01-21 15:36:48.773228 [WARNING] switch_core_media.c:5667 Crypto not negotiated but required.
2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:5911 verto.rtc/31000 Set 2833 dtmf send payload to 101 recv payload to 101
2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:6239 No matches with FTMP, fallback to ignoring FMTP
2021-01-21 15:36:48.773228 [DEBUG] switch_core_media.c:6247 No matches with inherit_codec, fallback to ignoring PT
2021-01-21 15:36:48.773228 [WARNING] switch_core_media.c:6253 Crypto not negotiated but required.
2021-01-21 15:36:48.773228 [NOTICE] switch_channel.c:3908 Hangup verto.rtc/31000 [CS_EXECUTE] [INCOMPATIBLE_DESTINATION]
2021-01-21 15:36:48.773228 [DEBUG] switch_core_session.c:2905 verto.rtc/31000 skip receive message [APPLICATION_EXEC_COMPLETE] (channel is hungup already)
2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:651 (verto.rtc/31000) State EXECUTE going to sleep
2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:585 (verto.rtc/31000) Running State Change CS_HANGUP (Cur 1 Tot 1)
2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:848 (verto.rtc/31000) Callstate Change RINGING -> HANGUP
2021-01-21 15:36:48.773228 [DEBUG] switch_core_state_machine.c:850 (verto.rtc/31000) State HANGUP
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:60 verto.rtc/31000 Standard HANGUP, cause: INCOMPATIBLE_DESTINATION
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:850 (verto.rtc/31000) State HANGUP going to sleep
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:620 (verto.rtc/31000) State Change CS_HANGUP -> CS_REPORTING
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:585 (verto.rtc/31000) Running State Change CS_REPORTING (Cur 1 Tot 1)
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:936 (verto.rtc/31000) State REPORTING
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:174 verto.rtc/31000 Standard REPORTING, cause: INCOMPATIBLE_DESTINATION
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:936 (verto.rtc/31000) State REPORTING going to sleep
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:611 (verto.rtc/31000) State Change CS_REPORTING -> CS_DESTROY
2021-01-21 15:36:48.793250 [DEBUG] switch_core_session.c:1726 Session 1 (verto.rtc/31000) Locked, Waiting on external entities
2021-01-21 15:36:48.793250 [NOTICE] switch_core_session.c:1744 Session 1 (verto.rtc/31000) Ended
2021-01-21 15:36:48.793250 [NOTICE] switch_core_session.c:1748 Close Channel verto.rtc/31000 [CS_DESTROY]
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:739 (verto.rtc/31000) Running State Change CS_DESTROY (Cur 0 Tot 1)
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:749 (verto.rtc/31000) State DESTROY
2021-01-21 15:36:48.793250 [DEBUG] mod_rtc.c:132 verto.rtc/31000 RTC DESTROY
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:181 verto.rtc/31000 Standard DESTROY
2021-01-21 15:36:48.793250 [DEBUG] switch_core_state_machine.c:749 (verto.rtc/31000) State DESTROY going to sleep
2021-01-21 15:36:48.833246 [DEBUG] mod_verto.c:607 WRITE 93.104.1.138:42084 [{
	"jsonrpc":	"2.0",
	"id":	2,
	"method":	"verto.bye",
	"params":	{
		"callID":	"360828a2-046a-0c70-8e20-8e23a5418cdf",
		"causeCode":	88,
		"cause":	"INCOMPATIBLE_DESTINATION"
	}


More information about the FreeSWITCH-users mailing list