Caddy: Support for static certificate transparency files

Created on 13 Apr 2017  路  9Comments  路  Source: caddyserver/caddy

Like this module allows it for NGINX

discussion feature request

Most helpful comment

(Let me know if this should be a separate issue)

I think Caddy can do one better than static SCT files -- in the same way Caddy made TLS easier than any other server -- Caddy could automatically submit certificates to CT logs, and include SCTs in the TLS handshake, all without requiring any additional configuration from server operators.

All 9 comments

Thanks for your feature request! I need to brush up on the latest CT technology, but I think @sleevi_ has some good insight on this. It'll be important to consider the long-term effects of implementing this feature into Caddy.

(Let me know if this should be a separate issue)

I think Caddy can do one better than static SCT files -- in the same way Caddy made TLS easier than any other server -- Caddy could automatically submit certificates to CT logs, and include SCTs in the TLS handshake, all without requiring any additional configuration from server operators.

Looks like all you need to do to server SCTs from Golang's TLS is to include them in this struct: https://golang.org/pkg/crypto/tls/#Certificate

The only other step then is agreeing how we get our SCTs. I'm in favor of Caddy automatically submitting certs to logs (possibly only if there aren't already SCTs embedded in the cert itself), and using those SCTs to serve.

There's a small compilation in agreeing on which CT logs to submit to, but that's a small detail :-)

Sounds nice, even though the option for static generated *.sct's would be nice because I am not using Let's Encrypt because they don't support wildcard certificates yet 馃槃

Yes, I agree with @alex that Caddy should take care of this automatically if there aren't already embedded SCTs.

I'd be happy to discuss which logs to submit to as well.

@lenovouser

I am not using Let's Encrypt because they don't support wildcard certificates yet

Do you use the certificates for things other than your website?

The first challenge, I think, is that different certs need to go to different logs -- for Google logs, Let's Encrypt go to Icarus, while everyone else goes to Pilot/Rocketeer/Aviator (this is all from memory, so I'm sure I got some of the names wrong).

Further, for non-publicly-trusted certs, submitting them to CT doesn't make sense -- they'll get rejected if they're not from a public issuer.

Perhaps for v1 of this we should have people opt into which logs (which no one will actually know how to do probably) with a default for Let's Encrypt (which will work automatically)?

If that sounds good, I can try to make some cycles for this.

Sounds good, I use the certificates only for websites and things like a mailserver @mholt

I've tested all transparency servers listed on certificate-transparency.org/known-logs for Let's Encrypt and these ones accept their certificates:

ct.googleapis.com/pilot
ct.googleapis.com/icarus
ct.googleapis.com/rocketeer
ctlog.api.venafi.com
ctlog.wosign.com

@alex

Perhaps for v1 of this we should have people opt into which logs (which no one will actually know how to do probably) with a default for Let's Encrypt (which will work automatically)?

That's reasonable -- I wonder how this would be exposed, maybe a ct subdirective in the tls directive? And yeah, I think we can definitely have it "just work" for Let's Encrypt certs, which is I bet 90-95% of Caddy users that don't meddle with the TLS configuration that much or use their own certs anymore.

I have a gut feeling this feature would be supplanted by SCTs embedded into certificates, like Let's Encrypt will start doing hopefully this year, so I think that would eliminate the need for us to need to implement this. :)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ericmdantas picture ericmdantas  路  3Comments

mikolysz picture mikolysz  路  3Comments

PhilmacFLy picture PhilmacFLy  路  3Comments

xfzka picture xfzka  路  3Comments

whs picture whs  路  3Comments