-
Notifications
You must be signed in to change notification settings - Fork 585
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Updated SSL/TLS defaults #1143
base: main
Are you sure you want to change the base?
Updated SSL/TLS defaults #1143
Conversation
@moogle19 can you please bump CI? We can also upgrade 1.13.3 to 1.14.4. |
TLS1.3 doesn't support secure_renegotitate or reuse_sessions which is set to true by default. By moving the set_secure_defaults after the configuration, the correct options are set
Currently Should I update that too? |
@moogle19 let's not change that in this PR and we could have a separate discussion for it, because I want to involved the Security WG in those changes. |
The initial implementation of TLS 1.3 in OTP 22 was incomplete and buggy. I would not enable TLS 1.3 on OTP <22.2 at all, and I would recommend at least 23.0. So if Plug still supports 22.x, should we perhaps retain the old
Mozilla's use-case is very browser-oriented. I suppose all modern browsers now send a reasonably set of ciphers in an appropriate order. For Plug/Phoenix we should consider a broader range of clients, including API clients built by people without much TLS experience. I suppose for the |
We can require Elixir v1.14 but we will probably need to wait at least 6 months before releasing a new version (which is fine). |
Ah, one more thing: the new |
So is it safer to wait until the whole tooling (and web) becomes more mature? Or maybe we use the specification from 2 years ago? |
Isn't the certificate only used in the |
TLS 1.3 will work with RSA, but the "Modern compatibility" requirements specifically require an ECDSA certificate. But actually the settings used in this PR will also work with RSA, since unlike TLS 1.2 cipher suites the 1.3 cipher suites do not constrain the signature algorithm and the So I was wrong when saying "the new Sorry for the false alarm! |
Co-authored-by: Bram Verburg <[email protected]>
This updates the default SSL/TLS configurations according to Mozillas Server Side TLS Guidelines.
The last update of the configuration was in 2018 and didn't support TLS 1.3.
Since support for TLS 1.3 was added in OTP 22, I also bumped the Elixir version to 1.12 (since it was the first version requiring OTP 22).