Enabling TLS 1.3 and Customizing Cipher Suites in Cloudera Manager
This topic explains how administrators can override the default global TLS protocol version and cipher suites in Cloudera Manager. Cloudera Manager preconfigures and recommends these defaults. Use this guidance only when your security policy requires customization. You can apply these security enhancements using the Cloudera Manager Admin Console UI.
Configuring the Global TLS Protocol Version
Use the Cloudera Manager UI to configure the active TLS protocol version applied across all cluster services.
- How global TLS version selection works
-
Cloudera Manager applies a single global TLS version setting () that all cluster services inherit by default. The default value is TLSv1.2 and TLSv1.3 (combined). You do not need to take any action unless your security policy requires restricting or changing this default.
Cluster services inherit this setting when you set their per-service TLS version parameter to
Copy From Global Settings. You can override this setting on individual services if a specific component requires a different protocol version.
- Steps
-
- Navigate to SSL/TLS settings:
-
Log in to the Cloudera Manager UI as an administrator.
-
Navigate to .
-
Type Supported SSL/TLS versions into the configuration search bar.
-
- Configure the TLS version only if you need to override the default. Cloudera
Manager defaults to TLSv1.2 and TLSv1.3. Change this
setting only when your security policy requires a different version:
Select your preferred configuration from the property dropdown menu:
-
Choose
TLSv1.3to enable TLS 1.3 exclusively. -
Choose
TLSv1.2, and TLSv1.3to enable both versions simultaneously. -
Choose
TLSv1.2to enable TLS 1.2 exclusively.
-
- Save changes and restart the Cloudera Manager:
- Click Save Changes.
- Log in to your terminal host and restart Cloudera Manager
Server through
SSH:
sudo systemctl restart cloudera-scm-server
- Verify Log output:
- Run the following search against the server log directory to confirm
success:
cat /var/log/cloudera-scm-server/cloudera-scm-server.log | grep "Configured TLS versions"
- Run the following search against the server log directory to confirm
success:
- Navigate to SSL/TLS settings:
Configuring Global Cipher Suites
Use the Cloudera Manager UI to edit the global cipher distribution list and manage cluster component inheritance behaviors.
-
- How Cipher distribution works
-
-
Cloudera Manager pushes the global cipher list () to cluster services.
-
Services use these ciphers when their individual TLS cipher parameter is set to
Copy From Global Settings(stored internally as{{COPY_FROM_GLOBAL}}). -
Service-Specific Ciphers: You can customize the cipher list for individual services through the TLS options on that specific service configuration page.
-
Java format requirements: You must enter ciphers in
Java (JSSE)format (for example,TLS_AES_256_GCM_SHA384). For services that requireOpenSSLformat (such as Impala), Cloudera Manager automatically translates Java cipher names to OpenSSL equivalents during configuration deployment. Formatting errors can cause unexpected behavior or complete system failures.
-
Configuring Cloudera Manager Server default TLS Ciphers
By default, the Cloudera Manager Server uses a predefined set of
hardcoded TLS ciphers to secure communications. To meet specific organizational security
policies or compliance standards, administrators can override these default ciphers by
defining a custom cipher list using the CMF_OVERRIDE_TLS_CIPHERS
environment variable in the /etc/default/cloudera-scm-server configuration
file.
- Active Cipher Suites
-
Upon enabling the required feature flags, Cloudera Manager Server activates the following cipher suites:
-
TLS_AES_128_GCM_SHA256 -
TLS_AES_256_GCM_SHA384 -
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 -
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 -
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 -
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
-
- Overriding Cloudera Manager Server TLS Ciphers
-
This section describes how administrators can override the hardcoded default ciphers by defining a custom cipher list in the Cloudera Manager Server configuration file to meet specific security or compliance requirements.
When you enableCMF_FF_TLS_ADVANCED_CONTROL, the Cloudera Manager Server uses a hardcoded cipher list by default. To choose custom TLS ciphers for the Cloudera Manager Server:-
Edit the server configuration file:
/etc/default/cloudera-scm-server - Add your custom ciphers using the Java format (replace the placeholder text
with your choice of ciphers):
export CMF_OVERRIDE_TLS_CIPHERS="TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256:TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384:TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" - Restart the Cloudera Manager Server to apply the
changes:
sudo systemctl restart cloudera-scm-server
-
Configuring TLS Protocol Versions and Ciphers for Cloudera Manager Agents
Administrators can enforce specific TLS protocols and ciphers on individual host agents by modifying the local Agent configuration file. Explicit values configured in this file take precedence over server defaults.
- How Agent TLS defaults work
-
When you enable
CMF_FF_TLS_ADVANCED_CONTROL, the Cloudera Manager Server automatically pushes the following defaults to all host agents during heartbeats without requiring manual configuration:-
Cipher list:
TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384 -
Minimum TLS protocol:
TLSv1.2
-
- Agent Security Settings
-
Configure the TLS parameters under the
[Security]section of/etc/cloudera-scm-agent/config.inion each host:Parameter Accepted Format Description minimum_tls_protocolProtocol string (for example, TLSv1.3)Specifies the lowest TLS/SSL protocol version the agent negotiates. cipher_listOpenSSL cipher string Enforces ciphers for outbound connections to the Cloudera Manager Server. server_cipher_listOpenSSL cipher string Enforces ciphers for inbound connections to the agent's status server. - Steps
-
-
Edit
/etc/cloudera-scm-agent/config.inion the target host, uncomment the parameters under the[Security]section, and set your desired values:[Security] minimum_tls_protocol=TLSv1.3 cipher_list=TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384 server_cipher_list=TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384You can override any subset of these parameters independently. Parameters that you leave unconfigured use server-pushed defaults.
-
Restart the Cloudera Manager Agent to apply the change:
sudo systemctl restart cloudera-scm-agent
-
These steps allow you to enable TLS 1.3 for Cloudera Manager with the correct ciphers for your services. This process ensures enhanced security for all encrypted communications across your network.
Cipher naming format reference
This section details the cipher naming syntax requirements across Java-based and OpenSSL-based cluster components.
| Component | Expected Format | Example Cipher String |
|---|---|---|
| Cloudera Manager Server, HDFS, YARN, HBase, Hive, ZooKeeper, Kafka, Ranger, Oozie, Solr | Java (JSSE) | TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 |
| Cloudera Manager Agent | OpenSSL | ECDHE-RSA-AES256-GCM-SHA384 |
| TLS 1.3 Ciphers (Both Formats) | Identical in both | TLS_AES_256_GCM_SHA384 |
Cloudera Manager automatically converts Java cipher names to OpenSSL equivalents for services that require OpenSSL format when inheriting from the global cipher list.
