davidc502 wrote:More about the certificate. certbot, for let's encrypt, was used to create the cert... It's just a command line utility, and it asked me Zero questions about the environment.
After it was created, I just moved on, and haven't circled back around, but surely it has switches that will allow one to fill in the information needed.
Quick summary at first:
To allow opkg to download packages from a https:// server; wget, ca-certificates, and ca-bundle packages is all that's needed. No configuration required. ca-bundle may not even be required, but it doesn't hurt and I always keep it installed in addition to ca-certificates. If this isn't done, then even if/when you get your web server certificate to show as completely valid in a browser; opkg update and opkg install will fail.
For creating a cert to be used for Luci-SSL, simply look back at my previous few (long ) posts. All the required info is there (with one of the most important things that I haven't seen mentioned anywhere is making sure your build doesn't include a /etc/uhttpd.crt file. Many seem to for some reason (even if Luci-SSL isn't included), but the cert is very old and out of date. uhttpd (using px5g) will generate one automatically based on your uhttpd config on first boot, BUT ONLY if the file/cert doesn't already exist. Also, ensure the commonname in the uhttpd config file is set to 192.168.1.1 (other fields don't matter since its not going to be signed by a CA. This way, someone can if they so choose, download the certificate and add it to their browser certificate store so it will accept it as fully valid.
Now to finally address your original question of correctly generating a cert for your web-server (which contains all the builds, packages, etc)
According to https://letsencrypt.org/docs/certificate-compatibility/, the certificate should be fully legit and uses IdenTrust’s DST Root X3 as the CA which is included in all browsers. I just checked and it is also included in /etc/ssl/certs, so it was provided by either the ca-certificates or ca-bundle packages. So it should definitely be able to work 100%.
If I were you, I would load https://valid-isrgrootx1.letsencrypt.org/ (as opposed to simply letsencrypt.org; link is mentioned at https://letsencrypt.org/certificates/ ; its a page with an example certificate just as you would get, 90 day expiration) in IE (in Chrome I can't figure out how to display the actual certificate, clicking on the Lock Icon simply loads a list of permissions) or in another browser that will actually display the certificate (normally by clicking the lock icon and choosing Display Certificate). Click on the Details tab of the cert and look at the values they used. For example in the Subject field, only the CN (common name) value is included and should match your URL (davidc502sis.dynamic-dns.net). Many certs show the origination, state, country, and location in the Subject field of the cert. Not here. If you compare it to your current cert on https://davidc502sis.dynamic-dns.net, you'll notice giant differences, the biggest of which is probably what is listed as who the certificate is issued to and by whom.
The only other thing I can recommend is to check out https://letsencrypt.org/getting-started/ and https://certbot.eff.org/
Edit: ALOT more info on cert here: https://certbot.eff.org/docs/using.html
(Last edited by starcms on 30 Dec 2016, 04:59)