[ This is (nearly) a copy of bug #141479 ]
Description of problem:
The %post scriptlet creates the SSL certificate at /usr/share/ssl. This
causes problems because:
* the /usr filesystem (inclusive /usr/share/ssl) can be shared between
several hosts; when there are multiple imap-servers, every one would
use the same certificate. This will not work because CN must match
the DNS name.
This causes problems also, when /usr is mounted read-only. Then the
%post-scriptlet will fail because the certificate can not be created.
* the sharing happens in >90% of all cases over an unencrypted
network-filesystem (NFS). So, an attacker could easily get the
A better place for the certificates would be somewhere under /etc.
Version-Release number of selected component (if applicable):
Assigning to openssl, because this is a problem for all applications
which are using certificates.
I do not think that this is problem of openssl only. The standard
/usr/share/openssl path is ok for CA certificates, and the statements
above do not apply to it. I agree that this path is not good for
system-management -- configuration data (and ca-bundle.crt is a such
one) should not be placed under /usr but in /etc or /var. But this is
another, minor issue...
All SSL-capable applications (at least these, known by me) accept
pathnames for the service certificate+key. So the packages creating
own keys (exim, postgresql-server, openldap-server) should put the
certs into a safe path; the applications will work without problems.
The contents of the /usr/share/ssl (including the ca-bundle, although it's
debatable if it should stay or not) is moved to /etc/pki/tls and /etc/pki/CA