I was wondering if someone would be able to explain to me how to make my website HTTPS instead of HTTP. Also, some good places to get either a free or paid SSL Cert.
Generally speaking you'll want to generate a private key on your server (don't give it to anyone!/OpenSSL is your friend here) and csr and ship it to a CA ( letsencrypt as mentioned.)
They'll send you a public cert, and a ca cert (maybe a couple of extra files). Depending on your apache setup you may want to install the ssl module and include it in the http.conf. Then once again depending on set up - in the http.conf or ssl.conf in your apache dir point include where these files live.
Do you supply your own certificate to be signed or is it provided by them?
Also that lifetime is interesting. On one hand it stops leaked certificates from causing too much damage. On the other it might cause people to come to accept constantly changing SSLs certificates, which might allow people to miss sophisticated MitM attacks with signed certs to go more unnoticed.
In the tutorial is shows a cron job the you can create that will auto renew it.
Also I think that Let's Encrypt gives you a self signed cert , so while it will still encrypt you data it doesn't vouch for your validity like the paid ones do.
You can check their site for how they do certificates. The 90 day limited is partly to reduce issues from stolen or misissued certificates. And partly to encourage automation.
People don't accept changing certificates because people never noticed valid changed certificates.
@bert_maklin this is wrong. Let's encrypt provide signed trusted certificates that are completely valid on all browsers. It's is one of (arguably) the largest certificate authority available. Let's not downplay it.
In reality nothing unless you want extended validation (your not getting it). Let's encrypt won't give wild card certificates, but it's more automated so isn't required. And that about the only difference.