> On Mar 30, 2017, at 4:40 PM, Heiko Schlittermann via Exim-users
> <[email protected]> wrote:
>
>> I don't know whether Exim needs to be restarted to change
>> certificates, or picks up new certs automatically as clients
>> connect. I suspect the latter, with the TLS context
>> created and destroyed per connection.
>
> You're right, Exim picks up the cert/keys per connection, as the
> relevant options are expandable at runtime. (But, as far as I know,
> currently not based on the key that is requested (so we do not support
> multiple key setups for the same CN, as far as I know. But I may be
> wrong, as always.)
What this means is that session resumption can't possibly work in
Exim (which is OK, Exim is not obligated to optimize the handshake
overhead of high-volume TLS traffic). Consequently, it would be
best if Exim did not generate SSL session ids or vend TLS session
tickets.
Disabling session generation and suppressing session tickets takes
a few lines of code (for OpenSSL):
#ifdef SSL_OP_NO_TICKET
SSL_CTX_set_options(ctx, SSL_OP_NO_TICKET);
#endif
SSL_CTX_set_session_cache_mode(ctx, SSL_SESS_CACHE_OFF);
This will save clients the cost of attempting session resumption,
and will save bandwidth transmitting session tickets, ...
There's likely something similar that can be done to disable
server-side session caches with GnuTLS.
--
Viktor.
--
## 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/