<div dir="ltr">I'll try this on an aws instance and report. Some googling also suggests that the additional step of "pk12util -i ipa.example.com.p12 -d /etc/httpd/alias" is needed, which is similar to what you suggested. A few more questions:<div>1) How would renewals work ? the pem files can be renewed on expiration from LE's client. Would I need to run the exact same steps every time ?</div><div>2) Do expired ones need to be removed from the db in some way before renewed ones can be added ? </div><div>3) If httpd's certs expire, it won't affect any other functionality apart from the webui right ? Are there any other side effects ? I won't be using this for ldap certs. <br></div><div>4) How would I revert to IPA signed certs with automatic renewal if I want to ? i.e. Reverting to stock configuration</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Nov 11, 2015 at 8:33 AM, Rob Crittenden <span dir="ltr"><<a href="mailto:rcritten@redhat.com" target="_blank">rcritten@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">Fraser Tweedale wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Tue, Nov 10, 2015 at 08:30:47PM -0800, Prasun Gera wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
You are right in that the fullchain.pem doesn't have the root certificate.<br>
I ran "openssl x509 -in chain.pem -noout -text", and saw that it<br>
had Issuer: O=Digital Signature Trust Co., CN=DST Root CA X3, and Subject:<br>
C=US, O=Let's Encrypt, CN=Let's Encrypt Authority X1. So I got the root<br>
certificate for DST Root CA X3 from<br>
<a href="https://www.identrust.com/certificates/trustid/root-download-x3.html" rel="noreferrer" target="_blank">https://www.identrust.com/certificates/trustid/root-download-x3.html</a>, which<br>
is self signed from what I can tell. The issuer and the subject are the<br>
same. I added that to the fullchain, and the command seemed to work.<br>
However, it messed something up, and httpd didn't start after that. httpd<br>
error log had "Unable to verify certificate 'Signing-Cert'. Add<br>
"NSSEnforceValidCerts off" to nss.conf so the server can start until the<br>
problem can be resolved ". I added that to nss.conf, and ipactl started<br>
successfully after that. However, the webui hadn't configured the<br>
certificates properly. At this point, I just restored my backups<br>
of /etc/httpd/conf.d/ and /etc/httpd/alias/, which brought things back to<br>
where things were earlier. I think it would be better to do these<br>
experiments on a test bed first.<br>
<br>
</blockquote>
I am at a loss, and must have missed something. The purpose of this<br>
command is to be able to install 3rd party certificates, yet the<br>
code is expecting the certs to be signed by the IPA CA?<br>
<br>
Can someone explain what is going on here?<br>
</blockquote>
<br></span>
That isn't the problem. It doesn't require the IPA CA at all. It just checks that the root CA which issued the server cert is available (looks for subject == issuer). It would appear that something wasn't imported into the Apache NSS db.<br>
<br>
You'd need to re-run the import and then look at the Apache NSS database to ensure that the entire cert chain was imported with the proper trust which apparently it wasn't.<br>
<br>
# certutil -L -d /etc/httpd/alias<br>
<br>
The entire chain should be there, probably with trust like CT,, or C,,.<br>
<br>
To fix trust:<br>
<br>
# certutil -M -n "<nickname>" -t CT,, -d /etc/httpd/alias<br>
<br>
To add missing certs:<br>
<br>
# certutil -A -n "<nickname"> -t CT,, -d /etc/httpd/alias -i -i /path/to/pem<br>
<br>
Validate the web server cert. Use whatever nickname is appropriate for you:<br>
<br>
# certutil -V -u V -n Server-Cert -d /etc/httpd/alias<br>
<br>
The more details you have on what you did to fix this the better as that can be used to generate a new bug to fix this upstream.<span class="HOEnZb"><font color="#888888"><br>
<br>
rob<br>
</font></span></blockquote></div><br></div>