1 votes

La mise à niveau de nginx reverse-proxy de nginx 1.17 à nginx 1.18 donne une erreur SSL

J'ai des difficultés à mettre à jour nginx de la version 1.17 à la version 1.18 (ou .19, .20). Tout fonctionne bien avec la version 1.17, mais les versions supérieures donnent cette erreur :

2021/08/27 01:14:45 [error] 22#22: *8 peer closed connection in SSL handshake (104: Connection reset by peer) while SSL handshaking to upstream, client: 192.168.**.**, server: api*******.hm.*******.gov.br, request: "GET /favicon.ico HTTP/1.1", upstream: "https://192.168.**.**:443/favicon.ico", host: "api*******.hm.********.gov.br"

L'erreur ne se produit que lorsque le serveur en amont est un serveur IIS interne. Lorsque le serveur en amont est un autre nginx, il fonctionne avec les versions supérieures à 1.17.

La configuration est basiquement :

location  / {
    proxy_pass https://$host.***.br$uri$is_args$args;

J'ai essayé d'utiliser proxy_ssl_verify off sans succès. Le certificat IIS est auto-généré.

Veuillez me conseiller

0 votes

Avez-vous essayé d'ajouter proxy_ssl_server_name on; ?

0 votes

Oui, je l'ai fait. Même erreur

1 votes

Alors c'est très probablement ce que Tero Kilkanen a dit.

1voto

Tero Kilkanen Points 32968

Cela ressemble à un problème avec les versions TLS. Peut-être que votre serveur IIS dorsal n'est pas assez récent pour supporter le protocole TLS dont nginx a besoin ?

Essayez d'ajouter proxy_ssl_protocols qui contient les versions SSL / TLS prises en charge par votre IIS.

0 votes

Merci, je vais essayer. Y a-t-il un moyen de déboguer ces échanges de chaînes de protocoles ?

0 votes

J'ai ajouté proxy_ssl_protocols TLSv1 TLSv1.1; (et non TLSv2) au bloc de localisation et il a accepté les Ciphers de IIS 8.5 (IIS fonctionnant sur W2012r2). Alors je vais accepter la réponse car elle m'a sorti de la condition d'erreur. MAIS, la meilleure approche serait de mettre à niveau IIS pour qu'il prenne en charge TLSv2 et je travaillerai sur cette configuration également.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X