Add TLS Certificates and Keys
You can add and manage TLS certificates and keys in Cribl Stream to be reused across multiple purposes, including:
- Securing Leader-Node Communication with TLS
- Securing Sources and Destinations with TLS and mTLS
- Configuring TLS for API and UI Access
Certificate Requirements
Cribl Stream expects certificates and keys to be formatted in privacy-enhanced mail (.pem) format.
You can use:
- Certificates from a public certificate authority (recommended for production; trusted by most clients by default).
- Certificates issued by your organization internal PKI (requires adding the root and intermediate CA certificates to client trust stores).
- Self-signed certificates (for lab/test environments only; requires manual trust configuration).
Generate a Self-Signed Certificate (Optional)
For non-production or lab environments, you can generate a self-signed certificate and private key using OpenSSL:
openssl req -nodes -new -x509 -newkey rsa:2048 \
-keyout myKey.pem \
-out myCert.pem \
-days 420This command generates:
myCert.pem: a self-signed certificate (valid for 420 days).myKey.pem: an unencrypted 2048-bit RSA private key.
Add a Certificate
Once you have a certificate generated or prepared, you can add it on the on-prem Leader or Worker Group.
On the Leader
Add a certificate on an on-prem Leader Node to secure communications from Outposts or Worker Nodes to the Leader.
You do not need to add certificates to Cribl.Cloud Leaders. Leaders in Cribl.Cloud are secured with TLS certificates managed and configured by Cribl.
In the sidebar, navigate to Settings > Global > Security > Certificates.
Select Add Certificate.
Enter a descriptive Name (for example,
leader-ui-tlsorworker-tls).In the Certificate field, do one of the following:
- Drag and drop your
.pemcertificate file into the field. - Select the upload button to browse for the file.
- Open the certificate file, copy its contents, and paste them into the field.
Certificate should have the following form:
-----BEGIN CERTIFICATE----- CERTIFICATE CONTENT -----END CERTIFICATE------ Drag and drop your
In the Private key field, upload or paste the corresponding private key in PEM format.
An unencrypted private key should have the following form:
-----BEGIN RSA PRIVATE KEY----- HIDDEN PRIVATE KEY -----END RSA PRIVATE KEY-----An encrypted private key uses a different heading and footer:
-----BEGIN ENCRYPTED PRIVATE KEY----- HIDDEN ENCRYPTED PRIVATE KEY -----END ENCRYPTED PRIVATE KEY-----(Optional) If your private key is encrypted, enter the Passphrase.
(Optional) If you’re using a certificate signed by an external certificate authority (for example, a downloaded Splunk Cloud certificate), you have mTLS enabled, and need to validate client certificates, upload or paste the CA certificate chain into the CA certificate field. For details, see Obtain the Certificate Chain (TLS/SSL).
(Optional) Add a Description to help identify the certificate’s purpose.
Select Save.
On a Worker Group
You can use certificates added at Worker Group level to secure connection to external services through Sources.
To add certificates at the Worker Group level:
In the sidebar, select Worker Groups, then select the Worker Group you want to configure.
Select Worker Group Settings.
Navigate to Security > Certificates.
Select Add Certificate.
Enter a descriptive Name (for example,
leader-ui-tlsorworker-tls).In the Certificate field, do one of the following:
- Drag and drop your
.pemcertificate file into the field. - Select the upload button to browse for the file.
- Open the certificate file, copy its contents, and paste them into the field.
Certificate should have the following form:
-----BEGIN CERTIFICATE----- CERTIFICATE CONTENT -----END CERTIFICATE------ Drag and drop your
In the Private key field, upload or paste the corresponding private key in PEM format.
Private key should have the following form:
-----BEGIN RSA PRIVATE KEY----- HIDDEN PRIVATE KEY -----END RSA PRIVATE KEY-----An encrypted private key uses a different heading and footer:
-----BEGIN ENCRYPTED PRIVATE KEY----- HIDDEN ENCRYPTED PRIVATE KEY -----END ENCRYPTED PRIVATE KEY-----(Optional) If your private key is encrypted, enter the Passphrase.
(Optional) If you’re using a certificate signed by an external certificate authority (for example, a downloaded Splunk Cloud certificate), upload or paste the CA certificate chain into the CA certificate field. For details, see Obtain the Certificate Chain (TLS/SSL).
(Optional) Add a Description to help identify the certificate’s purpose.
Select Save.
Commit and Deploy the Worker Group’s new configuration.
Manage Existing Certificates
To view and manage certificates you’ve already added:
- Navigate to Settings > Global > Security > Certificates (Leader) or Worker Group Settings > Security > Certificates (Worker Group level).
- Select a certificate name to view or edit its details.
- To delete a certificate, click the delete icon next to the certificate entry.
Before deleting a certificate, verify it’s not in use by any TLS configuration (Leader UI/API, Leader-Worker Node communications, Sources, or Destinations).
Using Certificates
After adding a certificate, you can reference it by name in various TLS configurations:
| Purpose | Where to Configure |
|---|---|
| Leader UI/API | Settings > Global > General Settings > API Server Settings > TLS > Certificate |
| Leader-Worker Node Communications | Settings > Global > System > Distributed Settings > TLS Settings > Certificate |
| Worker Node TLS | Worker Node Settings > System > Distributed Settings > TLS Settings > Certificate |
| Sources/Destinations | Individual Source or Destination TLS settings |
Maintaining TLS Certificates
Certificate revocation can lead to unexpected service interruptions. To mitigate risks:
- Regularly review and renew certificates.
- Implement robust monitoring and alerting systems to detect potential issues.
- Ensure secure storage of certificates and private keys.
- In case of emergency, have a well-defined recovery plan to restore service quickly.