-
-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Description
Thanks to a recent agreement, I'll soon be working on integrating Smallstep into Caddy. 👍
This should allow us to serve HTTPS for localhost and internal sites automatically, much like we already do for public sites via Let's Encrypt. Essentially, we want https://localhost or https://example.local to be able to be the default using trusted certificates and properly managed local/internal PKI.
In Caddy 1, tls self_signed simply generated a private key in memory and used it to self-sign a certificate that lasted for a week, and that's all: it wasn't trusted, the key wasn't reused, and there was no proper PKI. With this integration in v2, Caddy will be able to serve your local dev and internal sites over HTTPS using trusted certificates with a proper, long-lived CA. This brings the ACME protocol into local and internal environments, rather than hacking private keys together in memory.
In the future, we can probably extend this to properly-managed mTLS that is (near-)fully automatic in a cluster.
This feature is not a release blocker for Caddy 2.0. It may get into 2.1.
This issue is for tracking discussion of the proposal and getting feedback from interested users and companies. Please get involved!
Here are some questions to help bootstrap development discussion:
- What do you want/need most from this feature?
- Should HTTPS be the default for all sites, including local and internal ones?
- What kind of configuration should be exposed?
- What should the cert and CA default lifetimes be?
- (Anything else that comes to your mind)
/cc Smallstep: @mmalone @maraino @mikemaxey