On 07/27/2017 12:01 AM, David Cunningham wrote:
Thanks very much for that reply. We now detect whether the destination is using TLS successfully using $ru and pcre_match().
Now when we call Asterisk -> Kamailio+rtpengine -> TLS phone, the TLS phone rings but the call drops immediately when it answers. The issue is that Asterisk doesn't like the 200 OK from the phone, which contains SRTP information. The error logged by Asterisk is "Rejecting secure audio stream without encryption details". I've included the SDP below.
Our questions now are:
1) Our goal is to have Kamailio+rtpengine act as a TLS/SRTP <--> Plain SIP/RTP bridge. Is it possible to configure Kamailio so that Asterisk never sees the encryption information in the 200 OK?
Yes, you just need to instruct rtpengine to translate the SDP to plain RTP when sending to Asterisk. The appropriate flag to use in this case would be `RTP/AVP`. Other flags might be relevant (e.g. if Asterisk doesn't want to see any ICE information, use `ICE=remove`).
2) Is there anything wrong with the SDP returned by the TLS phone? For example, you mentioned before SDES SRTP and I wonder if the type of SRTP is not acceptable for some reason.
This is also something you can control with flags given to rtpengine in the other direction (plain RTP being translated to SRTP). By default, both SDES and DTLS are offered. Either can be disabled by `SDES-off` and `DTLS=off` respectively. Please see the docs at https://goo.gl/ivMQ6C
Kamailio (SER) - Users Mailing List