Remove TLSv1.1 from default protocols#121731
Conversation
This commit removes "TLSv1.1" from the list of default protocols in
Elasticsearch (starting with ES9.0)
TLSv1.1 has been deprecated by the IETF since March 2021
This affects a variety of TLS contexts, include
- The HTTP Server (Rest API)
- Transport protocol (including CCS and CCR)
- Outgoing connections for features that have configurable SSL
settings. This includes
- reindex
- watcher
- security realms (SAML, OIDC, LDAP, etc)
- monitoring exporters
- inference services
In practice, however, TLSv1.1 has been disabled in most Elasticsearch
deployments since around 7.12 because most JDK releases have disabled
TLSv1.1 (by default) starting in April 2021
That is, if you run a default installation of Elasticsearch (for any
currently supported version of ES) that uses the bundled JVM then
TLSv1.1 is already disabled.
And, since ES9+ requires JDK21+, all supported JDKs ship with TLSv1.1
disabled by default.
In addition, incoming HTTP connections to Elastic Cloud deployments
have required TLSv1.2 or higher since April 2020
This change simply makes it clear that Elasticsearch does not
attempt to enable TLSv1.1 and administrators who wish to use that
protocol will need to explicitly enable it in both the JVM and in
Elasticsearch.
Resolves: elastic#108057
|
Pinging @elastic/es-security (Team:Security) |
|
Hi @tvernum, I've created a changelog YAML for you. Note that since this PR is labelled |
|
I haven't included any docs change here due to the docs freeze. I'll open a draft PR with the proposed changes so that we can be ready to port it to the new docs system. |
|
Hi @tvernum, I've updated the changelog YAML for you. Note that since this PR is labelled |
|
Hi @tvernum, I've updated the changelog YAML for you. Note that since this PR is labelled |
💚 Backport successful
|
This commit removes "TLSv1.1" from the list of default protocols in
Elasticsearch (starting with ES9.0)
TLSv1.1 has been deprecated by the IETF since March 2021
This affects a variety of TLS contexts, include
- The HTTP Server (Rest API)
- Transport protocol (including CCS and CCR)
- Outgoing connections for features that have configurable SSL
settings. This includes
- reindex
- watcher
- security realms (SAML, OIDC, LDAP, etc)
- monitoring exporters
- inference services
In practice, however, TLSv1.1 has been disabled in most Elasticsearch
deployments since around 7.12 because most JDK releases have disabled
TLSv1.1 (by default) starting in April 2021
That is, if you run a default installation of Elasticsearch (for any
currently supported version of ES) that uses the bundled JVM then
TLSv1.1 is already disabled.
And, since ES9+ requires JDK21+, all supported JDKs ship with TLSv1.1
disabled by default.
In addition, incoming HTTP connections to Elastic Cloud deployments
have required TLSv1.2 or higher since April 2020
This change simply makes it clear that Elasticsearch does not
attempt to enable TLSv1.1 and administrators who wish to use that
protocol will need to explicitly enable it in both the JVM and in
Elasticsearch.
Resolves: elastic#108057
This commit removes "TLSv1.1" from the list of default protocols in
Elasticsearch (starting with ES9.0)
TLSv1.1 has been deprecated by the IETF since March 2021
This affects a variety of TLS contexts, include
- The HTTP Server (Rest API)
- Transport protocol (including CCS and CCR)
- Outgoing connections for features that have configurable SSL
settings. This includes
- reindex
- watcher
- security realms (SAML, OIDC, LDAP, etc)
- monitoring exporters
- inference services
In practice, however, TLSv1.1 has been disabled in most Elasticsearch
deployments since around 7.12 because most JDK releases have disabled
TLSv1.1 (by default) starting in April 2021
That is, if you run a default installation of Elasticsearch (for any
currently supported version of ES) that uses the bundled JVM then
TLSv1.1 is already disabled.
And, since ES9+ requires JDK21+, all supported JDKs ship with TLSv1.1
disabled by default.
In addition, incoming HTTP connections to Elastic Cloud deployments
have required TLSv1.2 or higher since April 2020
This change simply makes it clear that Elasticsearch does not
attempt to enable TLSv1.1 and administrators who wish to use that
protocol will need to explicitly enable it in both the JVM and in
Elasticsearch.
Resolves: #108057
|
@tvernum is this PR relevant to the serverless changelog? [FYI this question is based on 9.0 breaking changes] |
|
Thanks for the reminder, @leemthompo It is not relevant to Serverless, but I had opened #121732 to draft the docs changes, but never got it converted to the new docs system. |
In ES9 and later, we do not enable TLSv1.1 by default, even if the JDK supports it. This updates the docs accordingly. Relates: elastic#121731
In ES9 and later, we do not enable TLSv1.1 by default, even if the JDK supports it. This updates the docs accordingly. Relates: #121731
In ES9 and later, we do not enable TLSv1.1 by default, even if the JDK supports it. This updates the docs accordingly. Relates: elastic#121731
Elasticsearch 9.0 and later require JDK21 This changes the docs regarding TLS versions to reflect the behaviour on modern JDKs. Relates: - elastic/elasticsearch#121731 - elastic/elasticsearch#121732 Co-authored-by: Liam Thompson <32779855+leemthompo@users.noreply.github.com>
This commit removes "TLSv1.1" from the list of default protocols in Elasticsearch (starting with ES9.0)
TLSv1.1 has been deprecated by the IETF since March 2021
This affects a variety of TLS contexts, include
In practice, however, TLSv1.1 has been disabled in most Elasticsearch deployments since around 7.12 because most JDK releases have disabled TLSv1.1 (by default) starting in April 2021
That is, if you run a default installation of Elasticsearch (for any currently supported version of ES) that uses the bundled JVM then TLSv1.1 is already disabled.
And, since ES9+ requires JDK21+, all supported JDKs ship with TLSv1.1 disabled by default.
In addition, incoming HTTP connections to Elastic Cloud deployments have required TLSv1.2 or higher since April 2020
This change simply makes it clear that Elasticsearch does not attempt to enable TLSv1.1 and administrators who wish to use that protocol will need to explicitly enable it in both the JVM and in Elasticsearch.
Resolves: #108057