Details
-
Bug
-
Resolution: Fixed
-
Major
-
7.1.0, 7.1.1, 7.1.2
-
Triaged
-
1
-
Unknown
Description
Currently ns_server supports TLS 1.2 and TLS 1.3 when connecting to another ns_server or to memcached but TLS 1.2 requires periodic renegotiations which leads to replication and dist connection drops.
In order to avoid renegotiations we can simply switch to TLS 1.3 completely which should guarantee that there will be no renegotiation attempts at all (because there is not such thing in TLS 1.3).
Note that since we need to stay backward compatible, mixed clusters should support working via tls 1.2.
Ideally the list of TLS versions to use internally should be configurable. We already have min tls version setting for cb server but this seems to be a slightly different thing because customers might need to support TLS 1.2 for external connections (or even TLS 1.1). For that reason we need to have a separate setting for tls versions to be used internally. That setting should be enforced on the client side. That same setting can be propagated to golang services via cbauth, because the same renegotiation problem may also affect other long living connections established by services to memcached or to ns_server (this seems to be less critical task though).
Attachments
Issue Links
- relates to
-
MB-55674 ERROR: Join completion call failed on server-add using user-generated certs
-
- Closed
-