Beyond raw keys: signed certificates
SSH certificates let a Certificate Authority (CA) sign user and host keys, embedding identity ("principal"), scope, and an expiration date. Instead of distributing public keys to every ~/.ssh/authorized_keys on every server, every server trusts the CA's public key — and any user with a CA-signed certificate can log in.
Why it scales better than authorized_keys
- Expiration — certificates auto-expire, no manual rotation needed. Issue a 30-day cert, server stops trusting it after 30 days, period.
- Identity in the cert — "this cert is for principal
you_username" — server matches against allowed users. - Single trust point — one CA public key on every server, instead of N user keys per server.
- Revocation by KRL — Key Revocation List can invalidate specific certs before expiration.