On 10/11/2019 2:55 AM, Jeremy Harris via Exim-users wrote:
The openssl_options are fed to the SSL_CTX_set_options() interface
(via some fairly-obvious processing).  The tls_require_ciphers is
fed to SSL_CTX_set_cipher_list().


http://exim.org/exim-html-current/doc/html/spec_html/ch-encrypted_smtp_connections_using_tlsssl.html#SECTreqciphssl

talks about order of the list of ciphers, which to me implies that
the library uses that order as a preference.
--
Cheers,
  Jeremy

@Jeremy:

Apparently IBM agrees with your interpretation:
https://www.ibm.com/support/knowledgecenter/en/SSB23S_1.1.0.15/gtpc2/cpp_ssl_ctx_set_cipher_list.html

Note what IBM support says: "You must specify the ciphers in order of preference from highest to lowest."

This thread has given me a much deeper understanding of how to manage cipher negotiation in exim. As a result of this thread I have adopted Viktor's setting for tls_require_ciphers. (Thanks Viktor)

Following is the cipher list result I see on CentOS 7.7.1908
with openssl 1:1.0.2k-19.el7:
[root@localhost ~]#openssl ciphers 
'DEFAULT:!EXPORT:!LOW:!MEDIUM:!kECDH:!kDH:!aDSS:!PSK'|tr : '\n'
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-RSA-AES256-SHA384
ECDHE-ECDSA-AES256-SHA384
ECDHE-RSA-AES256-SHA
ECDHE-ECDSA-AES256-SHA
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES256-SHA256
DHE-RSA-AES256-SHA
DHE-RSA-CAMELLIA256-SHA
AES256-GCM-SHA384
AES256-SHA256
AES256-SHA
CAMELLIA256-SHA
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-SHA
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES128-SHA256
DHE-RSA-AES128-SHA
DHE-RSA-CAMELLIA128-SHA
AES128-GCM-SHA256
AES128-SHA256
AES128-SHA
CAMELLIA128-SHA

My previous setting (last visited about 4 years ago) resulted in a list more than double the length of this, with some ciphers considered very weak included. Although, TLS connections (both directions) typically result in a TLS1.2 connection using one of the top ciphers in the list.

I also tried adding '@STRENGTH' to the setting but found it produced the exact same order. Does exim add that, or does openssl automatically sort by strength?

Phil Carroll

--
## List details at https://lists.exim.org/mailman/listinfo/exim-users
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/

Reply via email to