Nginx reverse proxy : ignorer la vérification SSL du backend

De plus en plus d’applications Web prennent en charge le protocole HTTPS nativement, ce qui assure un chiffrement du trafic entre le navigateur Internet et le serveur, qui dit SSL dit également certificat, et donc paramétrage celui-ci sur le serveur hôte (backend).

En plus de la sécurité et du point d’entrer unique, l’utilisation d’un reverse proxy comme Nginx permet de fournir un flux HTTPS pour les applications qui ne « prenait » pas en charge celui-ci, ce qui est moins le cas aujourd’hui et donc cela impose aussi de gérer le certificat SSL sur l’application (Backend), ce qui peut devenir fastidieux en entreprise quand on a plus dizaine voir centaine d’application, surtout que la durée de vie des certificats est amenée à être réduite à quelques mois.

Pour des raisons pratiques, on peut ignorer la vérification SSL avec Nginx et garder par exemple sur le serveur un certificat auto-signé.

Pour ignorer la vérification SSL, il faut ajouter la directive proxy_ssl_verify off après le proxy_pass.

Ce qui nous donne dans la configuration du virtualhost :

server{
    listen 443 ssl;
    http2 on;
    server_name www.domain.tld;
    
    location / {
         proxy_pass https://A.B.C.D; # Backend
         proxy_ssl_verify off; # Ignore SSL error
         include proxy_params;
    }
}

Avec le paramètre proxy_ssl_verify off le certificat du serveur en Backend ne sera pas vérifié.

Pour des raisons de sécurité et notamment pour vos utilisateur dans cette configuration, il est portant de limiter l’accès au serveur backend seulement par le reverse proxy.

Pour résumer :

Comment ignorer les erreurs SSL du serveur backend avec Nginx ?

Dans le bloc location / {...} après la directive proxy_pass ajouter : proxy_ssl_verify off;

Romain Drouche
Architecte Système | MCSE: Core Infrastructure
Expert en infrastructures IT avec plus de 15 ans d’expérience sur le terrain. Actuellement Chef de projet Systèmes et Réseaux et Référent SSI (Sécurité des Systèmes d’Information), je mets mon expertise au service de la fiabilité et de la sécurité des environnements technologiques.

Laisser un commentaire