J'utilise nginx comme proxy pour un serveur principal. Le serveur principal utilise également nginx et applique l'authentification par certificat client à l'aide des directives ssl_client_certificate
et ssl_verify_client
.Nginx proxy_ssl_certificate ne fonctionne pas comme prévu
Dans mon serveur nginx je mis les éléments suivants:
location /proxy {
proxy_pass https://www.backend.com;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_ssl_certificate /etc/nginx/cert/client.crt;
proxy_ssl_certificate_key /etc/nginx/cert/client.key;
}
selon the nginx docs. Cependant, le backend répond toujours avec un code de réponse de "No required SSL certificate was sent"
.
Notez que lors de l'émission des requêtes au serveur principal en utilisant wget avec le certificat client, je reçois une réponse 200 OK valide:
wget --certificate=/etc/nginx/cert/client.crt --private-key=/etc/nginx/cert/client.key https://www.backend.com
Qu'est-ce que je manque dans ma configuration nginx?