6 commentaires
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.
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 ?
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.
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.
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.
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 !
Laisser une réponse
Vous devez être connecté pour poster un message !
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.