Vault pas content avec le TLS mutualisé sur K8s

martin-hubert 20/10/2024
RÉSOLU

salut les pros j'essaie de configurer Vault avec du mTLS pour un client mais ça part en cacahuète. mon client K8s doit s'authentifier à Vault via un certificat, mais Vault refuse la connexion TLS. j'ai des erreurs de type x509: certificate signed by unknown authority. j'ai bien monté le CA dans Vault pour qu'il reconnaisse les certs clients.

# partie de ma config Vault TLS
listener "tcp" {
  address = "0.0.0.0:8200"
  tls_disable = false
  tls_cert_file = "/vault/tls/vault.crt"
  tls_key_file = "/vault/tls/vault.key"
  tls_client_ca_file = "/vault/tls/ca.crt"
  tls_require_and_verify_client_cert = true
}
20/10/2024 à 21:47

6 commentaires

antoine-gay
Membre Actif Secouriste
Avatar de antoine-gay
antoine-gay
Membre Actif Secouriste

yo. si t'es sur k8s et que t'as un ingress controller devant Vault, c'est lui le coupable. beaucoup de ingress controllers (nginx, traefik) terminent le TLS et ne transmettent pas le certificat client à Vault par défaut. il faut que l'ingress soit configuré pour passer le cert client.

21/10/2024 à 19:52

on est sur Nginx Ingress Controller. j'ai mis les annotations pour les secrets TLS classiques mais je pensais que c'était suffisant. il faut faire quoi pour le cert client ?

22/10/2024 à 19:35
matthieu-bonnin
Membre Actif
Avatar de matthieu-bonnin
matthieu-bonnin
Membre Actif

pour Nginx Ingress, tu dois ajouter des annotations spécifiques pour le mTLS. principalement nginx.ingress.kubernetes.io/auth-tls-verify-client: "on" et nginx.ingress.kubernetes.io/auth-tls-secret qui pointe vers le secret avec ton CA client. Sans ça Nginx fait pas passer le cert client à Vault.

Modifié le 23/05/2026 à 16:20

ah ouais merde j'avais complètement zappé l'annotation auth-tls-verify-client. je la rajoute et je re-teste. je vous tiens au jus.

Modifié le 23/05/2026 à 16:20
antoine-gay
Membre Actif Secouriste
Avatar de antoine-gay
antoine-gay
Membre Actif Secouriste

ouais c'est la clé. l'ingress doit être configuré pour demander et transmettre le certificat client. sinon Vault voit pas le cert et te jette.

Modifié le 23/05/2026 à 16:20

VOILÀ ! C'était bien ça. J'ai ajouté l'annotation et c'est passé nickel. Vault reçoit bien le cert client. Merci les gars, vous me sauvez la mise !

26/10/2024 à 12:39

Laisser une réponse

Vous devez être connecté pour poster un message !

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire