Configuration TLS v1.2 non pris en compte sur mon nginx

a marqué ce sujet comme résolu.

Bonjour,

j’avais un serveur nginx qui me servait du TLSv1.3, jusqu’à tous va bien. Sauf que j’ai un routeur qui ne gère que le TLSv1.2 qui doit interagir avec mon serveur, donc j’ai décidé de changer la configuration pour avoir dû TLSv1.2 afin d’être compatible. Mais pour une raison inconnue, la configuration TLS n’a pas l’air d’être prise en compte et le TLSv1.2 ne passe pas (quand je teste avec openssl par exemple) par contre j’ai encore du TLSv1.3 ! Il y a une raison ?

# nginx -v
nginx version: nginx/1.18.0
# openssl version
OpenSSL 1.1.1n  15 Mar 2022

Ma configuration nginx :

upstream pdns {
    server 127.0.0.1:8081;
}

server {
    listen 80;
    listen [::]:80;
    server_name ns.oprax.net;

#    location / {
#        return 301 https://ns.oprax.net$request_uri;
#    }

    location / {
        proxy_pass http://pdns;
    }

    location ~* /servers/(.*)/zones/(.*)$ {
        error_page 418 = @post;

        if ($request_method = "POST") {
            return 418;
        }

        proxy_pass http://pdns;
    }

    location @post {
        proxy_method PATCH;
        proxy_pass http://pdns;
    }
}

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name ns.oprax.net;

    location / {
        proxy_pass http://pdns;
    }

    location ~* /servers/(.*)/zones/(.*)$ {
        error_page 418 = @post;

        if ($request_method = "POST") {
            return 418;
        }

        proxy_pass http://pdns;
    }

    location @post {
        proxy_method PATCH;
        proxy_pass http://pdns;
    }

    #### SSL
    ssl_certificate /srv/certs/ns.oprax.net/fullchain.pem;
    ssl_certificate_key /srv/certs/ns.oprax.net/key.pem;

    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_trusted_certificate /srv/certs/ns.oprax.net/fullchain.pem;
    resolver 80.67.169.40 80.67.169.12 valid=300s;
    resolver_timeout 3s;

    #### Session Tickets
    # Session Cache doit avoir la même valeur sur tous les blocs "server".
    ssl_session_cache shared:SSL:100m;
    ssl_session_timeout 24h;
    ssl_session_tickets on;
    # [ATTENTION] il faudra générer le ticket de session.
    ssl_session_ticket_key /etc/nginx/ticket.key;

    # [ATTENTION] Les paramètres Diffie-Helman doivent être générés
    ssl_dhparam /etc/nginx/dhparam4.pem;

    ssl_protocols TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers off;
}

Le résultat openssl :

$ openssl s_client -tls1_2 -connect ns.oprax.net:443
CONNECTED(00000003)
4047547DEE7F0000:error:0A00042E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version:../ssl/record/rec_layer_s3.c:1584:SSL alert number 70
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 209 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID:
    Session-ID-ctx:
    Master-Key:
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1685161455
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
    Extended master secret: no
---

Merci d’avance pour votre aide ! :)

+0 -0

Euh … Tu redémarres bien le serveur nginx ? Où même juste recharger la configuration ?

Soit avec services soit systemctl en fonction des systèmes si tu le lances depuis un service.

Ou sinon: /usr/sbin/nginx -s reload pour recharger la configuration. Il ne faut pas hésiter à faire nginx -t pour vérifier la configuration de nginx avant de le redémarrer.

Sinon, tu devrais pouvoir activer les deux en même temps:

    ssl_protocols TLSv1.2 TLSv1.3;

D’ailleurs, si tu vises l’utilisation de TLS, je te conseil d’utiliser ssl_prefer_server_ciphers on plutôt que off.

+1 -0

J’ai bien rechargé ma conf nginx (en général avec nginx -s reload) j’ai même redémarrer le serveur en entier pour être sur ! Oui j’avais enlever TLSv1.3 pour tester… Je l’ai rajouté et remis le ssl_prefer_server_ciphers à on, mais j’ai toujours le même problème…

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte