Viktor Dukhovni:
> On Fri, Sep 27, 2019 at 05:01:03PM +0200, Emmanuel Fust? wrote:
> 
> > Next, more a feature request: I have some custom transports defined for
> > different/custom client side TLS certs and conf.
> 
> Client-side TLS certs typically have private keys that only root
> can read, but tlsproxy(8) (optionally) chroots and then drops privs
> at startup, after loading any default client-side keys/certs.
> 
> For this, we'd need a variant of the server-side SNI code, with the
> keys and certs for various destinations are stored in a table that
> is opened in "pre-jail" initialization while the process is still
> running as root.  The client code would then load appropriate
> destination-specific keys from the table.
> 
> Just to be on the safe side with chroot, the CAfile and CApath are
> also required to be the same for all tlsproxy clients, perhaps
> this can be relaxed, as these files don't contain secrets, and
> should be readable by unprivileged processes.  With chroot jails,
> it would be the administrator's responsibility to ensure that
> suitable CAfile/CApath exist in the jail ($queue_directory).

Before implementing multiple TLS profiles in the tlsproxy(8) daemon,
we would have to get rid global libtls settings, and pass their
values through tls_{client,server}_init() calls.

Those global settings may differ between Postfix SMTP clients, and
they cannot be redefined by a tlsproxy client request because that
would affect connections from SMTP clients with different global
settings.

        Wietse

Reply via email to