VĂ€lja anti nginx 1.28.0 ja FreeNginx 1.28.0 fork.

PĂ€rast aasta arengut on avaldatud uus stabiilne versioon kĂ”rge jĂ”udlusega HTTP-serverist ja mitme protokolli proxy'st nginx 1.28.0, mis sisaldab muudatusi, mis on koondatud pĂ”hiversioonist 1.27.x. Edaspidi seostatakse kĂ”ik muudatused stabiilses versioonis 1.28 tĂ”siste vigade ja haavatavuste kĂ”rvaldamisega. Peagi formeeritakse pĂ”hiversioon nginx 1.29, kus jĂ€tkub uute vĂ”imaluste arendamine. Tavalistele kasutajatele, kellel pole eesmĂ€rki tagada ĂŒhilduvus kolmandate osapoolte moodulitega, soovitatakse kasutada pĂ”hiversiooni, mille alusel tehakse kaubanduslikku toodet Nginx Plus iga kolme kuu tagant.

Netcrafti mĂ€rtsi aruande kohaselt töötab nginxiga umbes 245 miljonit veebisaiti (aasta tagasi 243 miljonit, kaks aastat tagasi 289 miljonit). Nginx on kasutusel 17,89% kĂ”igist aktiivsetest veebisaitidest (aasta tagasi 18,15%, kaks aastat tagasi 18,94%), mis vastab selle kategooria populaarsuse esikohale (Apache osakaal on 16,03% (aasta tagasi 20,09%, kaks aastat tagasi 20,52%), Cloudflare — 17,81% (14,12%, 11,32%), Google — 9,89% (10,41%, 9,89%).

Vaatamata sellele, et kĂ”ikide veebisaitide seas, hoiab nginx turuliidrina 20,48% turust (aasta tagasi 22,31%, kaks aastat tagasi — 25,94%), samas kui Apache osakaal on 16,03% (20,17%, 20,58%), Cloudflare — 12,87% (11,24%, 10,17%), OpenResty (nginx ja LuaJIT platvorm) — 9,36% (7,93%, 7,94%).

Miljoni kĂ”ige kĂŒlastatuma veebisaidi seas maailmas, saavutab nginx teise koha osakaaluga 20,37% (aasta tagasi 20,63%, kaks aastat tagasi 21,37%). Esimese koha hoiab Cloudflare — 22,32% (aasta tagasi 22,59%, kaks aastat tagasi 21,62%). Apache httpd osakaal on 17,95% (20,09%, 21,18%).

W3Techsi andmetel kasutatakse nginxit 33,8% selle miljoni kĂ”ige kĂŒlastatumas veebisaidil (eelmise aasta aprillis oli see nĂ€itaja 34,3%, eelmisel aastal 34,5%). Apache osakaal on aasta jooksul langenud 30,1%-lt 26,3%-ni ja Microsoft IIS osakaal on langenud 5%-lt 4%-ni. Node.js osakaal on suurenenud 3,2%-lt 4,4%-le ja LiteSpeed osakaal 12,9%-lt 14,6%-le.

KÔige mÀrgatavamad tÀiustused, mis on lisatud pÔhiversiooni 1.27.x moodustamise kÀigus:

  • QUIC protokolli kasutavate ĂŒhenduste jaoks on lisatud CUBIC (RFC 9438) vĂ”rguĂŒlesehitusalgoritmi tugi, mille töö pĂ”hineb akna suuruse jĂ€rk-jĂ€rgulisel suurendamisel kadudeni, mille jĂ€rel akna suurus naaseb kaotuse eelnevale vÀÀrtusele. Testide tulemused nĂ€itavad, et CUBIC'i kasutamine vĂ€hendas 500 MB faili edastamise aega 24% vĂ”rra 40 ms latentsuse ja 750K BDP (Bandwidth Delay Product) korral ning 73% vĂ”rra 100 ms latentsuse ja 9M BDP korral.
  • Stream moodulisse on lisatud toe tugi klientide sertifikaatide tĂŒhistamise kontrollimiseks kasutades protokolli OCSP (Online Certificate Status Protocol).
  • Moodulis stream on rakendatud tuge OCSP Stapling sertifikaatide tĂŒhistamise kontrollimise tehnikale, mille keskmes on see, et TLS-ĂŒhenduse sĂ”lmimisel edastatakse sertifitseerimiskeskuse kinnitatud OCSP vastus serveri poolt, mis teenindab veebisaiti, ilma et oleks vaja otsest pöördumist sertifitseerimiskeskuse poole.
  • Konfiguratsiooni kĂ€ivitamisel ja uuendamisel on rakendatud vahemĂ€lu SSL-sertifikaadid, vĂ”tmete ja CRL (sertifikaadi tĂŒhistamisloendi).
  • On lisatud funktsioone, et vĂ€hendada ressursi tarbimist ja vĂ€hendada CPU koormust TLS-i kasutamisel konfiguratsioonides, kus on palju serveri ja asukoha blokke. Lisatud muudatused vĂ”imaldavad, selle asemel et luua iga konfiguratsiooni ploki jaoks eraldi SSL-i konteksti (SSL_CTX OpenSSL-is), kasutada olemasolevat SSL-i konteksti vanemast plokkist.
  • Direktiivis „ssl_client_certificate“ on tagatud toetus sertifikaatidele, millel on tĂ€iendav teave.
  • Kliendi SSL-sertifikaatide kontrollimiseks ei ole direktiiv „ssl_client_certificate“ enam kohustuslik.
  • Moodulisse ngx_mail_proxy_module on lisatud SmarterMail erimooduli IMAP LOGIN tugi, mis ei sisalda CAPABILITY vastust.
  • ngx_http_proxy_module moodulisse on lisatud direktiiv „proxy_pass_trailers“, mis lubab edastada pealkirjade vĂ€ljad vastuse lĂ”pus proxied serverilt kliendile.
  • Direktiivile «server», mida kasutatakse plokis «upstream», on lisatud parameetri «resolve» tugi, mis vĂ”imaldab jĂ€lgida sama domeeninime muudatusi. IP-aadressid ning automaatne ploki «upstream» konfiguratsiooni uuendamine ilma nginx'i taaskĂ€ivitamiseta aadressi muutumisel.
  • Lisatud on vĂ”imalus kasutada muutujaid direktiivides "proxy_limit_rate", "fastcgi_limit_rate", "scgi_limit_rate" ja "uwsgi_limit_rate".
  • Direktiivides «proxy_bind», «fastcgi_bind», «grpc_bind», «memcached_bind», «scgi_bind» ja «uwsgi_bind», samuti kliendi aadressina ngx_http_realip_module'i moodulis on lubatud IPv6 aadresside mÀÀramine ruudustikes ilma portide numbriteta.
  • Lisatud direktiiv „keepalive_min_timeout“, mis mÀÀrab aja, mille jooksul nginx ei sulge kliendi keep-alive ĂŒhendust.
  • Vaike seadistuses on protokollid TLSv1 ja TLSv1.1 keelatud.
  • Lahendatud on probleemid, mis pĂ”hjustasid konfiguratsioonifailide pika laadimise sama TLS-sertifikaatide, vĂ”tmete ja sertifitseerimiskeskuste loendi korduva parsimise tĂ”ttu. Konfiguratsiooni taaskĂ€ivitamine on kiirem, kuna kordumatud TLS-objektid, nagu sertifikaadid, vĂ”tmed ja CRL-d, on taaskasutatavad. Objektide pĂ€rimise keelamiseks konfiguratsiooni uuendamisel on lisatud direktiiv "ssl_object_cache_inheritable".
  • Lisa on vahetus sertifikaatide ja vĂ”tmete vahemĂ€lu, mis laaditi ĂŒles muutujaid kasutades direktiivides (nĂ€iteks „ssl_certificate /etc/ssl/$ssl_server_name.crt“). VahemĂ€lu haldamiseks on lisatud direktiivid „ssl_certificate_cache“, „proxy_ssl_certificate_cache“, „grpc_ssl_certificate_cache“ ja „uwsgi_ssl_certificate_cache“. Nende direktiivide kaudu saab seadistada vahemĂ€lu maksimaalse suuruse, salvestuste kehtivuse aja ja mittekasutatavate salvestuste puhastamise aja. NĂ€iteks: „ssl_certificate_cache max=1000 inactive=20s valid=1m;“.
  • Pikaajaliste pĂ€ringute mĂ€lu tarbimist on vĂ€hendatud konfiguratsioonides, kus kasutatakse direktiive "gzip", "gunzip", "ssi", "sub_filter" vĂ”i "grpc_pass".
  • SSL-i jagatud mĂ€lus vahepealsete seansside maksimaalne suurus on suurenenud 8192-ni.
  • C raamatukoguga on nĂŒĂŒd parem koostöö.
  • Teostasime jĂ”udluse optimeerimise ja vigade kĂ”rvaldamise HTTP/3 rakenduses.

Lisaks soovime mĂ€rkida FreeNginx 1.28.0 projekti vĂ€ljaandmist, mis arendab Nginx'i hargnevat varianti. Fork'i arendab Maksim Dunin, ĂŒks Nginx'i peamisi arendajaid. FreeNginx positsioneeritakse kui mittetulunduslik projekt, mis tagab Nginx'i koodibaasi arenduse ilma ettevĂ”ttesisese sekkumiseta. FreeNginx 1.28 haru spetsiifilised muudatused on:

  • Direktiivi "pid" parameeter "off", mis keelab PID-faili loomise.
  • Veateadete logi kirjutamise intensiivsuse piiramine, et kaitsta logi tĂŒĂŒpiliste teadete tĂ€itumise eest.
  • Multipath TCP toetamiseks on implementitud multipath parameeter direktiivis listen.
  • Toetatakse HTTP-pealkirja "Age", et mÀÀrata vahemĂ€lu kirje eluiga.
  • Mail_proxy moodulisse on lisatud autentimismeetodid XOAUTH2 ja OAUTHBEARER.

Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster