Why would anyone ever use self signed certs? Buy a cheap ass domain, and use LetsEncrypt to get a free cert.
I use self signed certs for thinclient authentication. Generate self signed cert, load into AWS workspaces, sign device certs with root, and only machines that have the cert installed and pass the username password prompt will get through the AWS service broker. I can’t see how using a CA signed cert helps me in any meaningful way. If I lose trust in the cert, I revoke it myself from the service.
Use of a CA (private CA would be my thought in this case) gives you greater ability to manage certs without needing to manually revoke and the ability to verify authenticity. You’re already doing most of the work to run a private CA, TBH. Just, instead of signing from the machine, you add your private CA’s intermediate cert to the trusted CAs on your hosts, and generate CSRs on your new hosts for your CA to sign.
Signing from the machine that uses a cert gives it greater authority and increases the “blast radius” if it gets compromised.
I do have a private ca service running on an internal ec2 instance, but all the AWS workspaces broker checks is if the device cert being passed by the thinclient was signed by one of the two signing certs you’ve loaded into the service, so the private ca itself still doesn’t manage revocation in this case.
I do appreciate the suggestion. My main goal in sharing this use case was to show folks that there are many places certificate are used that let’s encrypt isn’t geared up to solve. Other examples are things like signing Microsoft API requests, etc.
Anyway, have a great day!
Oh fun. Thanks for sharing! Have a great day, yourself!
Mtls across a large number of machines. I run my own CA and intermediates on hashicorp vault.
For end user services, yes LE.
At the point of running your own CA with infrastructure in place to support it, I wouldn’t really call that “self signing.”
I get that it technically is, since you’re not going through an external CA, but really it’s like calling a companies Datacenter “self hosted” because it’s on their own hardware. Technically the truth, but not what is generally meant. 😜
Self signed certs are more secure. You don’t have to trust the whole CA chain
As soon as everyone signs their zones with DNNSEC, we can implement DANE to use self-signed certificates safely, and all our problems will go away, world peace will be achieved, and food will taste better.
Syncthing .cert dir until it inevitably gets deleted due to a conflict
Not pictured: Using a CA to properly administer certs because self-signed certs are not secure.