nginx 1.16.0 vrystelling

Na 'n jaar van ontwikkeling verteenwoordig deur nuwe stabiele tak van hoëprestasie HTTP-bediener en multiprotokol-instaanbediener nginx 1.16.0, wat die veranderinge wat binne die hooftak 1.15.x opgehoop is, geabsorbeer het. In die toekoms sal alle veranderinge in die stabiele tak 1.16 verband hou met die uitskakeling van ernstige foute en kwesbaarhede. Die hooftak van nginx 1.17 sal binnekort gevorm word, waarbinne die ontwikkeling van nuwe funksies sal voortgaan. Vir gewone gebruikers wat nie die taak het om versoenbaarheid met derdeparty-modules te verseker nie, word aanbeveel gebruik die hooftak, op grond waarvan vrystellings van die kommersiële produk Nginx Plus elke drie maande gevorm word.

Die mees noemenswaardige verbeterings wat bygevoeg is tydens die ontwikkeling van die 1.15.x stroomop-tak:

  • Bygevoeg die vermoë om veranderlikes in '-aanwysings te gebruikssl_sertifikaat'i'ssl_sertifikaat_sleutel', wat gebruik kan word om sertifikate dinamies te laai;
  • Bygevoeg die vermoë om SSL-sertifikate en geheime sleutels van veranderlikes te laai sonder om tussenlêers te gebruik;
  • In die blok"stroomop» nuwe richtlijn geïmplementeer «ewekansige", met behulp waarvan u lasbalansering kan organiseer met 'n ewekansige keuse van 'n bediener om die verbinding aan te stuur;
  • In die module ngx_stream_ssl_preread veranderlike geïmplementeer $ssl_preread_protocol,
    wat die hoogste weergawe van die SSL/TLS-protokol spesifiseer wat die kliënt ondersteun. Die veranderlike laat toe konfigurasies skep vir toegang met behulp van verskeie protokolle met en sonder SSL deur een netwerkpoort wanneer verkeer met behulp van die http- en stroommodules instaan. Byvoorbeeld, om toegang via SSH en HTTPS deur een poort te organiseer, kan poort 443 by verstek aangestuur word na SSH, maar as die SSL-weergawe gedefinieer is, stuur dit aan na HTTPS.

  • 'n Nuwe veranderlike is by die stroomop-module gevoeg "$stroomop_bytes_sent", wat die aantal grepe wat na die groepbediener oorgedra is, vertoon;
  • Na die module stroom binne een sessie is die vermoë om verskeie inkomende UDP-datagramme van die kliënt te verwerk, bygevoeg;
  • Die richtlijn "proxy_versoeke", spesifiseer die aantal datagramme wat van die kliënt ontvang is, wanneer die binding tussen die kliënt en die bestaande UDP-sessie verwyder word. Nadat die gespesifiseerde aantal datagramme ontvang is, begin die volgende datagram wat van dieselfde kliënt ontvang is 'n nuwe sessie;
  • Die luisteraanwysing het nou die vermoë om poortreekse te spesifiseer;
  • Bygevoeg opdrag "ssl_vroeë_data» om die modus te aktiveer 0-RTT wanneer jy TLSv1.3 gebruik, wat jou toelaat om voorheen onderhandelde TLS-verbindingsparameters te stoor en die aantal RTT's tot 2 te verminder wanneer 'n voorheen gevestigde verbinding hervat word;
  • Nuwe instruksies is bygevoeg om keepalive vir uitgaande verbindings op te stel (aktiveer of deaktiveer die SO_KEEPALIVE opsie vir voetstukke):

    • «proxy_socket_keepalive" - stel die "TCP keepalive" gedrag op vir uitgaande verbindings na die gevolmagtigde bediener;
    • «fastcgi_socket_keepalive" - stel die "TCP keepalive" gedrag op vir uitgaande verbindings na die FastCGI-bediener;
    • «grpc_socket_keepalive" - stel die "TCP keepalive" gedrag op vir uitgaande verbindings na die gRPC-bediener;
    • «memcached_socket_keepalive" - stel die "TCP keepalive" gedrag op vir uitgaande verbindings na die memcached bediener;
    • «scgi_socket_keepalive" - stel die "TCP keepalive" gedrag op vir uitgaande verbindings na die SCGI-bediener;
    • «uwsgi_socket_keepalive" - stel die "TCP keepalive" gedrag op vir uitgaande verbindings na die uwsgi-bediener.
  • In die richtlijn "limiet_versoek" 'n nuwe parameter "vertraging" bygevoeg, wat 'n limiet stel waarna oortollige versoeke vertraag word;
  • Nuwe instruksies "keepalive_timeout" en "keepalive_requests" is by die "stroomop"-blok gevoeg om limiete vir Keepalive te stel;
  • Die "ssl"-aanwysing is afgekeur, vervang deur die "ssl"-parameter in die "luister"-aanwysing. Ontbrekende SSL-sertifikate word nou tydens die konfigurasietoetsstadium opgespoor wanneer die "luister"-instruksie met die "ssl"-parameter in die instellings gebruik word;
  • Wanneer die reset_timedout_connection-aanwysing gebruik word, word verbindings nou met 'n 444-kode gesluit wanneer die uitteltyd verstryk;
  • SSL-foute "http request", "https proxy request", "unsupported protocol" en "version too low" word nou in die log vertoon met die vlak "info" in plaas van "crit";
  • Bygevoeg ondersteuning vir die meningspeilingsmetode op Windows-stelsels wanneer Windows Vista en later gebruik word;
  • Moontlikheid om te gebruik TLSv1.3 wanneer jy met die BoringSSL-biblioteek bou, nie net OpenSSL nie.

Bron: opennet.ru

Voeg 'n opmerking