Skip to content

Commit 1d939fd

Browse files
rodrigorfkwallrj
authored andcommitted
fix: apply suggestions from code review
Co-authored-by: Richard Wall <[email protected]> Signed-off-by: Rodrigo Fior Kuntzer <[email protected]>
1 parent 0f499b0 commit 1d939fd

File tree

1 file changed

+25
-22
lines changed

1 file changed

+25
-22
lines changed

content/docs/configuration/vault.md

Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,11 @@ spec:
4949
5050
### Accessing a Vault Server with mTLS enforced
5151
52-
In certain use cases, the Vault Server could be configured to enforce clients to present a
53-
client certificates, those client certificates are just a transport layer enforcement,
52+
In certain use cases, the [Vault Server could be configured to enforce clients to present a
53+
client certificates](https://developer.hashicorp.com/vault/docs/configuration/listener/tcp#tls_require_and_verify_client_cert), those client certificates are just a transport layer enforcement,
5454
it does not provide any authentication and authorization mechanism to the Vault APIs itself.
55-
You can read more about the Vault server TCP listener [in the official documentation](https://developer.hashicorp.com/vault/docs/configuration/listener/tcp)
55+
56+
> 📖 Read about [configuring the Vault server TCP listener](https://developer.hashicorp.com/vault/docs/configuration/listener/tcp).
5657
5758
Please follow the steps below to configure Vault with mTLS enforced:
5859
- Generate the bundle CA and the server TLS certificate:
@@ -61,10 +62,10 @@ step certificate create "Example Server Root CA" server_ca.crt server_ca.key \
6162
--profile root-ca \
6263
--not-after=87600h \
6364
--no-password \
64-
--insecure
65+
--insecure
6566

6667

67-
step certificate create vault.vault vault.crt vault.key \
68+
step certificate create vault.vault server.crt server.key \
6869
--profile leaf \
6970
--not-after=8760h \
7071
--ca ./server_ca.crt \
@@ -78,9 +79,9 @@ step certificate create "Example Client Root CA" client_ca.crt client_ca.key \
7879
--profile root-ca \
7980
--not-after=87600h \
8081
--no-password \
81-
--insecure
82+
--insecure
8283

83-
step certificate create client.vault vault_client.crt vault_client.key \
84+
step certificate create client.vault client.crt client.key \
8485
--profile leaf \
8586
--not-after=8760h \
8687
--ca ./client_ca.crt \
@@ -97,13 +98,15 @@ kubectl create ns vault
9798
```shell
9899
kubectl create secret generic vault-tls \
99100
--namespace vault \
100-
--from-file=server.key=vault.key \
101-
--from-file=server.crt=vault.crt \
102-
--from-file=client-ca.crt=client_ca.crt \
103-
--from-file=client.crt=vault_client.crt \
104-
--from-file=client.key=vault_client.key
101+
--from-file=server.key \
102+
--from-file=server.crt \
103+
--from-file=client_ca.crt \
104+
--from-file=client.crt \
105+
--from-file=client.key
105106
```
106107
- Deploy Vault using the following values file:
108+
109+
> ⚠️ These settings are designed for quick local testing only. They are insecure and not suitable for production use.
107110
```yaml
108111
# vault-values.yaml
109112
global:
@@ -120,7 +123,7 @@ server:
120123
address = "[::]:8200"
121124
cluster_address = "[::]:8201"
122125
tls_disable = false
123-
tls_client_ca_file = "/vault/tls/client-ca.crt"
126+
tls_client_ca_file = "/vault/tls/client_ca.crt"
124127
tls_cert_file = "/vault/tls/server.crt"
125128
tls_key_file = "/vault/tls/server.key"
126129
tls_require_and_verify_client_cert = true
@@ -208,13 +211,11 @@ kubectl apply -f rbac.yaml
208211
```shell
209212
kubectl create secret generic vault-client-tls \
210213
--namespace application-1 \
211-
--from-file=client.crt=vault_client.crt \
212-
--from-file=client.key=vault_client.key
214+
--from-file=client.crt \
215+
--from-file=client.key \
216+
--from-file=server_ca.crt
213217
```
214218
- Create Issuer
215-
```shell
216-
export CA_BUNDLE=$(base64 -w 0 server_ca.crt)
217-
```
218219
```yaml
219220
# vault-issuer.yaml
220221
apiVersion: cert-manager.io/v1
@@ -226,13 +227,15 @@ spec:
226227
vault:
227228
path: pki_int/sign/application-1
228229
server: https://vault.vault:8200
229-
caBundle: ${CA_BUNDLE}
230+
caBundleSecretRef:
231+
key: server_ca.crt
232+
name: vault-client-tls
230233
clientCertSecretRef:
231234
name: vault-client-tls
232-
key: vault_client.crt
235+
key: client.crt
233236
clientKeySecretRef:
234237
name: vault-client-tls
235-
key: vault_client.key
238+
key: client.key
236239
auth:
237240
kubernetes:
238241
role: vault-issuer
@@ -241,7 +244,7 @@ spec:
241244
name: vault-issuer
242245
```
243246
```shell
244-
envsubst < vault-issuer.yaml | kubectl -f -
247+
kubectl apply -f vault-issuer.yaml
245248
```
246249
- Check Issuer status
247250
```shell

0 commit comments

Comments
 (0)