I found no problems running Asterisk on CentOS 7 servers and using TLS clients on both chan_sip and PJSIP, using tlsv1. When moving Asterisk on CentOS 9, TLS seems not able to work. Regardless of the configuration I may use, the problem is always the same:
ADH-AES256-SHA,ADH-AES128-SHA are deprecated and insecure, odd are they have been removed on earlier versions of openssl, have you checked what ciphers are available ? try : openssl ciphers -v or openssl ciphers -v | grep TLSv1
I have checked the list of ciphers returned from the “openssl chiphers -v” command carefully selecting one or more of them, doesn’t fix the problem. Has there anyone a working pjsip.conf with TLS on CentOS 9 and derivative?
Your problem is likely TLSv1 usage, which is considered insecure and distros have taken to disabling support for it in OpenSSL. They only allow 1.2 and above. I vaguely recall you have to enable legacy support in OpenSSL to allow it to work, but don’t recall the specifics.
There seems no way. The server is on “legacy” openssl verified with “update-crypto-policies --show”. The server has been rebooted and asterisk recompiled, but the only available method is still TLS 1.3 which has very little support among phones.
I am running Asterisk 20.8.0, but I have tried also on Asterisk 18.23.1. These asterisk versions are working great with CentOS 7, but on CentOS 9 with openssl 3.07, can’t work with anything below TLS 1.3. OpenSSL has been set already in “legacy mode”
You would probably have to set openssl to a lower security level (which affects the whole server). That can be done as follows in /etc/ssl/openssl.cnf:
Go down to [openssl_init] and below that line add: