AD Enterprise CA certificate expiring and unable to renew
We have an AD environment that a previous tech set up with PKI. the enterprise CA cert is going to expire soon and when trying to renew it we get an error that looks something like this:
The certificate template renewal period is longer than the certificate validity period. The template should be reconfigured or the CA certificate renewed.
All attempts to locate the root CA, which was taken offline, have been unsuccessful so we have a couple of main questions:
1) what happens when the cert expires and we haven't addressed this?
2) what steps can be taken to deal with this in the event we can't find the root CA?
Thanks in advance!
* Public Key Infrastructure (PKI)* certificate servicesActive DirectorySecurity
Last Comment
Alexander Insley
8/22/2022 - Mon
noci
first i have no experience with windows systems.....
1) If a root CA expires then all derived certificates will expire... all servers, etc. etc. will distrust the master certificate. (In AD that probably means the Domain going down).
2) All certificates are created from a template (which tells a lot of field values, so you don;t have to type them, or can accept the default) , at least it works like that in openssl, so why not in later built systems.
Your error message tells you the template has a date in it which is well before the end of validity ie. creating a certificate that would be expired immediately so such a certificate would make no sense. Check the templates for issues around the dat.
BTW. For a CA certificates it is quite normal to have a 10 year life span., also use the same key as was used before then all current certificates will stay valid. (if you can also the serial number.. in effect you want the same certificate with new end dates. (Another thing can be the hash algorithm SHA-1 was used a lot, and is now INVALID. (yesterday a collision attack was published:
"SHA-1 is a shambles". it has been announced deprecated for a while now)
Peter Hutchison
If you view the CA root certificate, it will display the name of the server in the list of CRL (certificate revocation list). See Details tab of the CA certificate properties and look for CRL Distribution Points entry:
URL=ldap:///CN=CAName,CN=servername,CN=CDP , ...
Logon to the server, it can be a member server or even a DC with the Active Directory Certificate Services (ADCS) role installed.
So when you say build new enterprise CA, do you mean:
1) create new root CA
2) create new subordinate CA(s)
3) issue new certs
?
Alexander Insley
ASKER
or can you create a new root authority and then issue new certs to your existing subordinates?
Mahesh
You can either create single enterprise root CA (AD Integrated CA)
OR
You can create new standalone offline root CA and issue new subordinate cert to current sub CA and it will further issue to clients (I have not tested this - but test this it should work)
OR
U can setup new standalone offline root CA and new Sub CA
we are considering all 3 options and we are thinking about trying the new standalone offline root CA first. I have questions:
- do you think this has the greatest chance for success? Or do you think the first option (single enterprise root CA, AD Integrated CA) would be better?
- once we build the root CA (found these instructions: https://stealthpuppy.com/deploy-enterprise-root-certificate-authority/), how do we make the existing enterprise CA start using the new cert from the new root CA?
- do we have to create the new root CA with same exact system name as the old one or can we use a new one?
suppose we go with the AD integrated option (which you seem to recommend over new offline root CA). How do we go about getting resources on the network to start using that certificate server (once built) instead of the existing one with the certificate that is going to expire? Does it just automatically take over once it presents itself on the network?
Mahesh
AD integrated CA will be automatically published to all clients and servers and you just need to create / choose appropriate certificate templates and may be you can use template autoenrollment feature
SHA1 should not be the problem for internal root CA certificate, however you even can build new offline root CA with SHA 256
You need to publish new offline root ca certificate to AD
refer article in last comment
Mahesh
Better You deploy new SHA 256 Offline root CA, then it will issue sub CA cert with SHA 256 only
If you build with SHA1, then you need to make little config and ensure that cert it issues will be with SHA 256
how would one go about creating/choosing certificate templates? would I need to log into the existing sub-ordinate and review the templates currently in use?
also, if we proceed with the new offline root CA, let me see if I have a handle on the steps required:
1) create new server (workgroup) and install certificate services (using this article: https://stealthpuppy.com/deploy-enterprise-root-certificate-authority/)
2) update CRL and AIA info with FQDN of new server
3) publish root CA certificate to AD
4) generate CSR on existing enterprise CA, create cert on root CA, then install on existing enterprise CA
Mahesh
Yes, you are right on above plan.
Alexander Insley
ASKER
thank you Mahesh! at the moment, I am most anxious about the CRL/AIA portion so we'll see how that goes and I will update the thread.
another question: do you have a good article on how to publish offline root CA certificate to AD?
noci
SHA1 is really obsolete for Certificates and stuff that is stored long times.
(A collision attack to be able to create duplicates only takes up to USD 10K, so if someone thinks they can take over your systems en get more from you that the 10K investment a certificate with SHA1 will not protect you).
So SHA256 or better hashes are needed. For datacom SHA1 can still be used as there one needs a collision for each packet. That is too expensive still.
Both articles have same steps but your article missing steps for AIA part, it only talks about CDP/CRL
Alexander Insley
ASKER
Mahesh,
We are working through the process and I am stuck on this part in the instructions (section 1.3.2.2) as I don't know if we need the delta cRL allowed part. We have already added the URL for the CDP; do we need to add another using some kind of different syntax?
Alexander Insley
ASKER
so I believe we have set up a new Root CA and now need to generate new sub ca certificate for existing sub CA. How do I do this? Help!
or can I just renew and submit request to new Root CA?
noci
If your new root CA is in the trusted store of ALL systems i don't see why it couldn't.. from a certificate point of view.
One just needs a valid chain to a trust anchor (the CA certificate being trusted).
(I have no experience on windows systems though).
Mahesh
Delta CRL is only exists with AD integrated CA servers and hence that step is needed on Sub CA server
To generate CSR, use steps under heading "Option 1 – When the issuer is a Standalone Root CA" in same article
I believe we managed to get the SubCA certificate renewed successfully (or issued a new cert) so that is working. What we are running into now is issues with SCCM. We imported the new Root CA certificate in site configuration but several functions (e.g., pushing apps, updates) are failing. Any insight as to why this might be?
Mahesh
I don't see how SCCM needs certificate for pushing updates etc, it must be different issue
1) If a root CA expires then all derived certificates will expire... all servers, etc. etc. will distrust the master certificate. (In AD that probably means the Domain going down).
2) All certificates are created from a template (which tells a lot of field values, so you don;t have to type them, or can accept the default) , at least it works like that in openssl, so why not in later built systems.
Your error message tells you the template has a date in it which is well before the end of validity ie. creating a certificate that would be expired immediately so such a certificate would make no sense. Check the templates for issues around the dat.
BTW. For a CA certificates it is quite normal to have a 10 year life span., also use the same key as was used before then all current certificates will stay valid. (if you can also the serial number.. in effect you want the same certificate with new end dates. (Another thing can be the hash algorithm SHA-1 was used a lot, and is now INVALID. (yesterday a collision attack was published:
"SHA-1 is a shambles". it has been announced deprecated for a while now)