-
Notifications
You must be signed in to change notification settings - Fork 47
Document support for PKCS#12 #860
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
Merged
Merged
Changes from 3 commits
Commits
Show all changes
25 commits
Select commit
Hold shift + click to select a range
2caf0c6
Update config for new beta
Deflaimun c3ffdd4
update with rpk 24.3.1-rc1 (#819)
Deflaimun 58e0bff
DOC-502 License enforcement updates (#813)
JakeSCahill 121d5f4
Properties 24 3 (#822)
Deflaimun 19c0ec1
Add User resource docs (#773)
JakeSCahill fce336b
Leader pinning (#809)
kbatuigas 3e93983
DOC-287 Mountable TS topics (#725)
kbatuigas 03d3e60
Update with latest rpk commands from v0.0.0-20241104git4a0f859 (#835)
Deflaimun 41bfe40
what's new in 24.3 beta (#811)
micheleRP afba214
Force-update fallback 24.3-rc2
Deflaimun 488c9f6
Michele rp patch 1 (#837)
micheleRP 67c90f5
DOC-470 Debug bundle in Redpanda Console (#825)
JakeSCahill 16e9cda
add Tombstone property (#847)
Deflaimun 58ded83
Tombstone retention (#829)
kbatuigas 3ba1d58
Document support for PKCS#12
JakeSCahill 6674fdc
Apply suggestions from code review
JakeSCahill f4f9b0b
Add to what's new
JakeSCahill 6f35525
Merge branch 'v-WIP/24.3' into DOC-539
JakeSCahill 749c6b0
Merge branch 'v-WIP/24.3' into DOC-539
JakeSCahill 3314d6c
Merge branch 'v-WIP/24.3' of https://github.com/redpanda-data/docs in…
JakeSCahill 15937df
Apply suggestions from review
JakeSCahill da65c90
Undo options
JakeSCahill 0a692ed
Apply suggestions from code review
JakeSCahill 3c7ce26
Merge branch 'v-WIP/24.3' into DOC-539
JakeSCahill baa286d
Apply suggestions from code review
JakeSCahill File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -14,24 +14,33 @@ By default, Redpanda data is sent unencrypted. A security best practice is to en | |
|
|
||
| TLS certificates are required for encryption. You can use your own certificates, either self-signed or issued by a trusted CA. | ||
|
|
||
| You'll need: | ||
|
|
||
| You'll need the following files: | ||
| -- | ||
| - A private key file (`broker.key`) for each broker. | ||
| - A certificate file (`broker.crt`) for each broker. | ||
| - A truststore file (`ca.crt`). All brokers can have the same `ca.crt` file. | ||
| -- | ||
|
|
||
| For mTLS, client certificates signed by the same CA are also required. | ||
| Ensure these files are readable by Redpanda and protected against unauthorized access: | ||
|
|
||
| If you enable TLS encryption, you can also specify a certificate revocation list (`ca.crl`) so that Redpanda can check and reject connections from entities using certificates already revoked by a certificate authority (CA). All brokers can have the same `ca.crl`. The file must contain a single, concatenated list of certificate revocation lists (CRLs) for all issuing certificates in the truststore file. | ||
| [,bash] | ||
| ---- | ||
| chmod 400 broker.key broker.crt ca.crt | ||
| chown redpanda:redpanda broker.key broker.crt ca.crt | ||
| ---- | ||
|
|
||
| For mTLS, client certificates signed by the same CA are also required. | ||
|
|
||
| If you don't already have these files, you can learn how to generate them in <<Create a local CA for self-signed certificates>>. | ||
|
|
||
| If you enable TLS encryption, you can also specify a certificate revocation list (`ca.crl`) so that Redpanda can check and reject connections from entities using certificates already revoked by a certificate authority (CA). All brokers can have the same `ca.crl`. The file must contain a single, concatenated list of certificate revocation lists (CRLs) for all issuing certificates in the truststore file. | ||
|
|
||
| [[gen-certs]] | ||
| == Generate certificate files | ||
|
|
||
| This section shows you how to generate self-signed certificate files for your Redpanda brokers. If you already have your own, you can skip this step. | ||
|
|
||
| NOTE: Self-signed certificates are useful if you want to generate multiple certificates all signed by the same root; for example, you want to use mTLS but issue different certificates to multiple Redpanda brokers and clients. | ||
| NOTE: Self-signed certificates are useful if you want to generate multiple certificates all signed by the same root. For example, you want to use mTLS but issue different certificates to multiple Redpanda brokers and clients. | ||
|
|
||
| === Create a local CA for self-signed certificates | ||
|
|
||
|
|
@@ -236,8 +245,19 @@ chmod 400 broker.key broker.crt ca.crt | |
|
|
||
| == Configure TLS | ||
|
|
||
| To configure TLS, in `redpanda.yaml`, enter either the standard PEM configuration files or the PKCS#12 bundle configuration. | ||
| To configure TLS, in `redpanda.yaml`, enter either the standard <<pem,PEM configuration files>> or the <<pkcs,PKCS#12 bundle configuration>>. | ||
|
|
||
| Choose PEM files when: | ||
|
|
||
| - You are using FIPS mode compliance. | ||
| - You prefer file-based configurations with separate key, certificate, and truststore file. | ||
JakeSCahill marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| Choose PKCS#12 bundles when: | ||
|
|
||
| - FIPS mode is not required in your environment. | ||
| - You want a single, password-protected file that contains all certificates and keys. | ||
|
|
||
| [[pem]] | ||
| === Configure TLS with PEM files | ||
|
|
||
| If you have separate `key_file`, `cert_file`, and `truststore_file`, use the following configuration in `redpanda.yaml`: | ||
JakeSCahill marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
@@ -314,11 +334,12 @@ Schema Registry and HTTP Proxy connect to Redpanda over the Kafka API. If you co | |
| * xref:./authentication.adoc#configure-schema-registry-and-http-proxy-to-connect-to-redpanda-with-sasl[Configure Schema Registry and HTTP Proxy to connect to Redpanda with SASL] | ||
| * xref:./listener-configuration.adoc[Configure Listeners] | ||
|
|
||
| [[pkcs]] | ||
| === Configure TLS with PKCS#12 bundles | ||
|
|
||
| You can simplify certificate management by using a PKCS#12 bundle. | ||
| You can simplify certificate management by generating a password-protected PKCS#12 bundle from your `broker.key` and `broker.crt` files. | ||
|
|
||
| NOTE: If you haven't generated the `.key` and `.crt` files, refer to <<gen-certs, Generate certificate files>>. | ||
| NOTE: PKCS#12 keys are not supported when xref:manage:security/fips-compliance.adoc[FIPS mode] is enabled in Redpanda. The PKCS12KDF algorithm used in PKCS#12 is not FIPS-compliant. To use Redpanda in FIPS mode, configure your certificates and keys in <<pem,PEM format>> instead. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. praise: 👍 |
||
|
|
||
| . Run this command to create a PKCS#12 file from your `broker.key` and `broker.crt` files: | ||
| + | ||
|
|
@@ -410,8 +431,6 @@ See also: xref:./listener-configuration.adoc[Configure Listeners] | |
|
|
||
| === Configure mTLS with PKCS#12 bundles | ||
|
|
||
| You can simplify certificate management by using a PKCS#12 bundle. | ||
|
|
||
| . Update `redpanda.yaml` with the path to the PKCS#12 bundle: | ||
| + | ||
| [source,yaml] | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.