> 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/

Reply via email to