Puncte:1

Nginx nu poate accepta acordul TLS atunci când clientul nu trimite extensii TLS

drapel in

Nginx este configurat ca echilibrator de încărcare și are instalat un certificat de server pentru a termina acordul de mână TLS pentru conexiunile MQTT. Funcționează atunci când extensiile TLS sunt incluse în clientHello în timpul strângerii de mână, dar există alți clienți care rulează cod vechi care nu trimit nicio extensie TLS în clientHello. În acest caz, am descoperit că Nginx va arunca erori ca în

SSL_do_handshake() a eșuat (SSL: error:14201044:SSL routines:tls_choose_sigalg:internal error) în timp ce SSL handshake, client: x.x.x.107, server: 0.0.0.0:8883

Aici este capturarea Wireshark

clientHello fără extensii

Mi se pare că Nginx se așteaptă cel puțin la extensia alorightms de semnătură. Întrebarea mea este dacă este posibil, Nginx poate fi configurat să accepte strângere de mână TLS atunci când clientul nu folosește extensii?

Configurația fluxului Nginx este aici (afișează numai referitor la TLS):

brokeri din amonte{
    server 127.0.0.1:18831;
    server 127.0.0.1:18832;
    server 127.0.0.1:18833;

    zona tcp_mem 64k;
    hash $mqtt_client_id consistent; 
}
Server {
    asculta 8883 ssl;  
    preread_buffer_size 1k;

    ssl_certificate /etc/nginx/certs/server.pem;
    ssl_certificate_key /etc/nginx/certs/server.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_session_cache shared:SSL:128m;  
    ssl_session_tickets pe;
    ssl_session_timeout 8h;
    ssl_verify_client dezactivat;
    ssl_prefer_server_ciphers dezactivat;    
 
    brokeri proxy_pass;
    proxy_connect_timeout 5s;
    access_log /var/log/nginx/mqtt_access.log mqtt;
    error_log /var/log/nginx/mqtt_error.log depanare;  
}

Iată captura wireshark când clienții trimit extensii în clientHello:

clientHello includ extensii

Z Wang avatar
drapel in
S-a dovedit că nivelul de securitate implicit openssl interzice cheile RSA mai puțin de 2048 de biți în cifruri. După ajustarea nivelului de securitate, problema este rezolvată.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.