I am using Ubuntu v14.04.3 LTS and Asterisk 13.3.2. When I try to call to my extension from a sipml5 client to just play a demo-congrats audio, my call gets disconnected instantly. When I check asterisk log, I got following error:
[2016-08-24 06:07:49] ERROR[31730][C-0000000c]: res_rtp_asterisk.c:2042 __rtp_recvfrom: DTLS failure occurred on RTP instance '0x7f547c013c68' due to reason 'sslv3 alert handshake failure', terminating
[2016-08-24 06:07:49] WARNING[31730][C-0000000c]: res_rtp_asterisk.c:3911 ast_rtcp_read: RTCP Read error: Unspecified. Hanging up.
[2016-08-24 06:07:49] WARNING[31730][C-0000000c]: app_playback.c:493 playback_exec: Playback failed on SIP/104600-00000007 for /var/www/html/fetch_prompt
[2016-08-24 06:07:49] ERROR[31730][C-0000000c]: utils.c:1402 ast_carefulwrite: write() returned error: Broken pipe
Also i am using Chrome v54.
I think this error is with openssl, but doesn't get a correct and complete answer yet to solve this issue. Does any one know how to solve this issue?
Solved this issue by upgrading openssl. Use below commands to upgrade openssl in Ubuntu 14
# echo 'deb http://us.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse' > /etc/apt/sources.list.d/xenial.list
# aptitude update
# aptitude install -y openssl libssl-dev
# rm /etc/apt/sources.list.d/xenial.list
# aptitude update
Use below commands to check openssl version
# ldd /usr/sbin/asterisk | grep libssl
libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f33ce117000)
# strings /lib/x86_64-linux-gnu/libssl.so.1.0.0 | grep 1.0.2
OPENSSL_1.0.2
OPENSSL_1.0.2g
SSLv3 part of OpenSSL 1.0.2g-fips 1 Mar 2016
TLSv1 part of OpenSSL 1.0.2g-fips 1 Mar 2016
DTLSv1 part of OpenSSL 1.0.2g-fips 1 Mar 2016
OpenSSL 1.0.2g-fips 1 Mar 2016
# openssl version
OpenSSL 1.0.2g-fips 1 Mar 2016
After this delete all existing asterisk keys and recreate keys again
# rm /etc/asterisk/keys/*
# cd /usr/src/astersik*/contrb/scripts
# sudo ./ast_tls_cert -C pbx.mycompany.com -O "My Super Company" -d /etc/asterisk/keys
# asterisk -rx "reload"