Ich benutze Nginx als Proxy für einen Backend-Server. Der Back-End-Server verwendet auch nginx und erzwingt die Clientzertifikatauthentifizierung mit den Anweisungen ssl_client_certificate
und .Nginx proxy_ssl_certificate funktioniert nicht wie erwartet
In meinem nginx-Server ich folgendes:
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;
}
nach the nginx docs.
Das Back-End reagiert jedoch immer noch mit einem 400-Antwortcode "No required SSL certificate was sent"
.
Beachten Sie, dass bei Anfragen an den Back-End-Server mit wget mit dem Client-Zertifikat ausgestellt hat, habe ich eine gültige 200-OK-Antwort erhalten:
wget --certificate=/etc/nginx/cert/client.crt --private-key=/etc/nginx/cert/client.key https://www.backend.com
Was ich in meiner nginx Konfiguration bin fehlt?