|Summary:||cn=cacert could show expired certificate|
|Product:||Red Hat Enterprise Linux 7||Reporter:||German Parente <gparente>|
|Component:||ipa||Assignee:||IPA Maintainers <ipa-maint>|
|Status:||CLOSED ERRATA||QA Contact:||ipa-qe <ipa-qe>|
|Severity:||unspecified||Docs Contact:||Marc Muehlfeld <mmuehlfe>|
|Version:||7.4||CC:||afarley, frenaud, gparente, ksiddiqu, mkosek, myusuf, ndehadra, pasik, pvoborni, rcritten, rhel-docs, slaznick, tscherf|
|Fixed In Version:||ipa-4.6.6-1.el7||Doc Type:||Bug Fix|
.IdM now correctly updates the certificate record in the `cn=CAcert,cn=ipa,cn=etc,<base_DN>` entry Previously, after renewing the Identity Management (IdM) certificate authority (CA) certificate or modifying the CA certificate chain, IdM did not update the certificate record stored in the `cn=CAcert,cn=ipa,cn=etc,<base_DN>` entry. As a consequence, installations of IdM clients on RHEL 6 failed. With this update, IdM now updates the certificate record in `cn=CAcert,cn=ipa,cn=etc,<base_DN>`. As a result, installing IdM on RHEL 6 now succeeds after the administrator renews the CA certificate or updates the certificate chain on the IdM CA.
|Last Closed:||2020-03-31 19:55:19 UTC||Type:||Bug|
|oVirt Team:||---||RHEL 7.3 requirements from Atomic Host:|
|Cloudforms Team:||---||Target Upstream Version:|
|Bug Depends On:||1576720|
|Bug Blocks:||1710435, 1713200|
Description German Parente 2018-02-12 15:28:37 UTC
Description of problem: this bug is related to https://bugzilla.redhat.com/show_bug.cgi?id=1543335 rhel6 ipa-client fails to retrieve right CA certificates, particularly when external CA installed When installing a RHEL6 client, ipa-client-install is retrieving the certificate from ldap. In the case of RHEL6, the certificate is taken from: dn = DN(('cn', 'CAcert'), ('cn', 'ipa'), ('cn', 'etc'), basedn) it has happened that if the CA was expired and re-newed it (in the customer case was external CA), this entry is not updated and only the ones at "cn=certificates". It could be interesting to replace the usercertificate in this entry so as the certificate retrieved in case of RHEL6 client will not show as expired one. In the scenario where we have had this, the customer was using external CA. I don't have an exact reproducer but as we have seen that the CA cert in cn=cacert was still expired, we have agreed to report this new bug. Version-Release number of selected component (if applicable): master 7.4 (latest) / client 6.9 (latest).
Comment 2 Rob Crittenden 2018-02-16 21:03:54 UTC
ipaConfigString needs to have compatCA set in order for cn=cacert to be updated. Can you see if that was set?
Comment 4 Rob Crittenden 2018-03-06 18:49:30 UTC
Ok, that's why it isn't being updated then. It should be added by ipa-cacert-manage AFAICT. Can you describe their environment more? Perhaps we can reproduce it here. Particularly, where did they renew the external CA and how did they update it in IPA?
Comment 10 fbarreto 2018-05-02 17:58:13 UTC
Converting it to a doc bug.
Comment 13 Rob Crittenden 2018-06-01 17:49:41 UTC
I'm going to pull this back into dev for more investigation. We used to store a single CA certificate in CN=CAcert entry but this was moved to the cn=certificates container to better support multiple certificates and chains. The compat entry is for older clients. ipa-cacert-manage install/renew should update CN=CAcert when a new CA is installed assuming that ipaConfigEntry in the cn=certificates CA entry has compatCA set. In a typical install with an IPA CA the ipaConfigEntry for the CA is set to ipaCA and compatCA in ipaserver/install/dsinstance.py::__upload_ca_cert() in the call to certstore.put_ca_cert_nss() compatCA is removed (and I'm not sure why) later in the installation in ipaserver/install/plugins/upload_cacrt.py. It also changes the case of ipaCA to ipaCa for some reason (not a deal breaker).
Comment 17 Rob Crittenden 2019-04-26 17:10:02 UTC
Upstream ticket: https://pagure.io/freeipa/issue/7928
Comment 18 Florence Blanc-Renaud 2019-05-15 11:38:05 UTC
*** Bug 1710235 has been marked as a duplicate of this bug. ***
Comment 19 Florence Blanc-Renaud 2019-05-22 15:54:27 UTC
Comment 20 Florence Blanc-Renaud 2019-05-23 06:24:54 UTC
Fixed upstream ipa-4-7: https://pagure.io/freeipa/c/5d0ed95344115508e001cad9e87d60686ed4db23 https://pagure.io/freeipa/c/180cbdd67fdf03e6b23293e30148381dfd6b6abe Fixed upstream ipa-4-6: https://pagure.io/freeipa/c/c442b95db57a3f56f291de35e6f11767c1dbaf9f https://pagure.io/freeipa/c/c3e6abfe687dc3540adfde72d6a5225444b23ee1
Comment 21 Florence Blanc-Renaud 2019-05-23 06:28:04 UTC
The commit includes functional test in ipatests/test_integration/test_external_ca.py::TestSelfExternalSelf
Comment 26 Mohammad Rizwan 2019-09-12 10:22:58 UTC
Automation test passed in tier2 pipeline for idm-ci. Hence marking the bug as verified.
Comment 32 errata-xmlrpc 2020-03-31 19:55:19 UTC
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:1083