Trusting host keys... I no longer need to check (or ignore and just type yes) when I first connect to a server.. which is literally as bad as on a brand new machine hitting a web browser, going to your online bank and ignoring the certificate warning.
Distributing trust, New employee - I don't need to push public keys out to all servers or rely on centralised auth such as LDAP/AD/Kerberos.
But the real gem is time limited access.. All without touching each server separately.
Ie, I want access to your fleet of servers for 2 hours, on Sunday 18th between 10:00-12:00 UTC. I create a certificate pair with that validity, pass you the public part and you sign it using the CA. Without you needing to touch any of your servers, I now have full access for the window as agreed.
This is only true if you don't trust the machine you are connecting to.
Private key (only you know) -> signed by CA -> public key you share.
You put the public key on the server , the CA can't change that file... And they can't make that particular cert work without a private key that you hold.
Most CA can do is revoke and break the chain on you.
In the browser world.. A a rouge CA, I could generate a certificate pair for https://google.com and your web browser would trust it.
The same is true with this setup... the solution, for this is to be your own CA and add the CA to all of your clients, rather than adding all of your clients to the server. So this reverses the problem, which for many should be easier.
(I honestly can't see anyone using a public CA for this.. it would be nuts)
You might be surprised to see the nut things people would do for convenience... but in this case you are probably right as the average computer user probably don't use SSH.
Here's a nice article about setting up a CA for your OpenSSH servers:
https://www.digitalocean.com/community/tutorials/how-to-crea...
It's better to generate short lived certificates and teleport does exactly that - you can use it with existing OpenSSH infrastructure:
http://gravitational.com/teleport/docs/admin-guide/#using-te...