Vydanie nginx 1.16.0

Po roku vývoja zastúpené nová stabilná vetva vysokovýkonného HTTP servera a multiprotokolového proxy servera nginx 1.16.0, ktorý absorboval zmeny nahromadené v rámci hlavnej vetvy 1.15.x. V budúcnosti budú všetky zmeny v stabilnej vetve 1.16 súvisieť s odstránením závažných chýb a zraniteľností. Čoskoro sa vytvorí hlavná vetva nginx 1.17, v rámci ktorej bude pokračovať vývoj nových funkcií. Pre bežných používateľov, ktorí nemajú za úlohu zabezpečiť kompatibilitu s modulmi tretích strán, odporúča použite hlavnú vetvu, na základe ktorej sa každé tri mesiace tvoria vydania komerčného produktu Nginx Plus.

Najpozoruhodnejšie vylepšenia pridané počas vývoja upstream vetvy 1.15.x:

  • Pridaná možnosť používať premenné v smerniciachssl_certificate' a 'ssl_certificate_key', ktorý možno použiť na dynamické načítanie certifikátov;
  • Pridaná možnosť načítať certifikáty SSL a tajné kľúče z premenných bez použitia medzisúborov;
  • V bloku"upstream» implementovaná nová smernica «náhodný“, pomocou ktorého môžete organizovať vyvažovanie záťaže s náhodným výberom servera na presmerovanie spojenia;
  • V module ngx_stream_ssl_preread implementovaná premenná $ssl_preread_protocol,
    ktorý určuje najvyššiu verziu protokolu SSL/TLS, ktorú klient podporuje. Premenná umožňuje vytvárať konfigurácie pre prístup pomocou rôznych protokolov s a bez SSL cez jeden sieťový port pri proxy prenose pomocou http a stream modulov. Napríklad, ak chcete organizovať prístup cez SSH a HTTPS cez jeden port, port 443 môže byť predvolene presmerovaný na SSH, ale ak je definovaná verzia SSL, presmerovať na HTTPS.

  • Do upstream modulu bola pridaná nová premenná "$upstream_bytes_sent", ktorý zobrazuje počet bajtov prenesených na skupinový server;
  • Do modulu prúd v rámci jednej relácie pribudla možnosť spracovať niekoľko prichádzajúcich UDP datagramov od klienta;
  • Smernica "proxy_requests“, určuje počet prijatých datagramov od klienta, po dosiahnutí ktorých sa väzba medzi klientom a existujúcou UDP reláciou odstráni. Po prijatí určeného počtu datagramov začne ďalší datagram prijatý od toho istého klienta novú reláciu;
  • Direktíva listen má teraz možnosť špecifikovať rozsahy portov;
  • Pridaná smernica "ssl_early_data» aktivujte režim 0-RTT pri použití TLSv1.3, ktorý vám umožňuje uložiť predtým dohodnuté parametre pripojenia TLS a znížiť počet RTT na 2 pri obnovení predtým vytvoreného pripojenia;
  • Boli pridané nové smernice na konfiguráciu keepalive pre odchádzajúce pripojenia (povolenie alebo zakázanie možnosti SO_KEEPALIVE pre sokety):

    • «proxy_socket_keepalive" - konfiguruje správanie "TCP keepalive" pre odchádzajúce pripojenia k serveru proxy;
    • «fastcgi_socket_keepalive" - konfiguruje správanie "TCP keepalive" pre odchádzajúce pripojenia k serveru FastCGI;
    • «grpc_socket_keepalive" - konfiguruje správanie "TCP keepalive" pre odchádzajúce pripojenia k serveru gRPC;
    • «memcached_socket_keepalive" - konfiguruje správanie "TCP keepalive" pre odchádzajúce pripojenia k serveru memcached;
    • «scgi_socket_keepalive" - konfiguruje správanie "TCP keepalive" pre odchádzajúce pripojenia k serveru SCGI;
    • «uwsgi_socket_keepalive" - konfiguruje správanie "TCP keepalive" pre odchádzajúce pripojenia k serveru uwsgi.
  • V smernici "limit_req" pridaný nový parameter „oneskorenie“, ktorý nastavuje limit, po ktorom sú nadbytočné požiadavky oneskorené;
  • Nové direktívy „keepalive_timeout“ a „keepalive_requests“ boli pridané do bloku „upstream“ na nastavenie limitov pre Keepalive;
  • Direktíva „ssl“ bola zastaraná, nahradená parametrom „ssl“ v smernici „počúvať“. Chýbajúce certifikáty SSL sa teraz zisťujú v štádiu testovania konfigurácie pri použití direktívy „listen“ s parametrom „ssl“ v nastaveniach;
  • Pri použití direktívy reset_timedout_connection sú teraz pripojenia po vypršaní časového limitu uzavreté kódom 444;
  • Chyby SSL „požiadavka http“, „požiadavka https proxy“, „nepodporovaný protokol“ a „príliš nízka verzia“ sa teraz zobrazujú v protokole s úrovňou „info“ namiesto „crit“;
  • Pridaná podpora pre metódu hlasovania v systémoch Windows pri používaní Windows Vista a novších;
  • Možnosť využitia TLSv1.3 pri vytváraní pomocou knižnice BoringSSL, nielen OpenSSL.

Zdroj: opennet.ru

Pridať komentár