Objavljen je izdanak glavne grane nginx 1.29.1, u kojoj se nastavlja razvoj novih mogućnosti. U paralelno podržavanu stabilnu granu 1.28.x unose se samo izmjene vezane uz otklanjanje ozbiljnih grešaka i ranjivosti. U budućnosti će se na temelju glavne grane 1.29.x formirati stabilna grana 1.30. Kod projekta napisan je na jeziku C i distribuira se pod BSD licencom.
U novom izdanju:
- Otklonjena ranjivost (CVE-2025-53859) u modulu ngx_mail_smtp_module, koja dovodi do čitanja podataka iz područja memorije izvan bafera prilikom obrade posebno oblikovanih vrijednosti korisničkog imena i lozinke prilikom korištenja metode autentifikacije „none“. Ranjivost može dovesti do curenja sadržaja memorije radnog procesa nginx u HTTP zahtjevu prema vanjskom strežniku autentifikaciji. Zakrpa.
- Prema zadanim postavkama, isključena je kompresija TLSv1.3 certifikata.
- Dodana je direktiva „ssl_certificate_compression“ za upravljanje kompresijom. TLS-certifikatov.
- U implementaciju protokola QUIC dodana je podrška za 0-RTT mod, dostupan na sustavima s OpenSSL 3.5.1 i novijim izdanjima.
- Otklonjena greška koja je dovodila do buferizacije HTTP odgovora 103 prilikom korištenja HTTP/2 i direktive „early_hints”.
- Otklonjena greška u obradi parametra „none” u direktivi „smtp_auth”.
- U implementaciji HTTP/3 riješen je problem s obradom broja porta u zaglavlju „Host”.
- Otklonjen problem koji se manifestirao prilikom korištenja istih vrijednosti u zaglavljima „Host” i „:authority” prilikom korištenja HTTP/2.
- Postavljen je build u NetBSD 10.0.
Odvojeno, kompanija F5 predstavila je preliminarnu verziju modula ngx_http_acme, koji pruža mogućnosti za automatizaciju zahtjeva, primanja i ažuriranja certifikata korištenjem ACMEv2 protokola (Automatsko upravljanje certifikatima), koji koristi certifikacijski centar Let’s Encrypt. Kada se koristi http_acme, administratorima nije potrebno brinuti se o ažuriranju certifikata, na temelju parametara u konfiguraciji modul će sam dobiti potrebne certifikate u Let’s Encrypt ili drugoj usluzi koja podržava ACME protokol. Kod modula napisan je na jeziku Rust uz korištenje SDK NGINX-Rust. acme_issuer letsencrypt { uri https://acme-v02.api.letsencrypt.org/directory; state_path /var/cache/nginx/acme-letsencrypt; accept_terms_of_service; } server { listen 80; # ACME HTTP-01 izazov location / { return 404; } } server { listen 443 ssl; server_name .example.com; acme_certificate letsencrypt; ssl_certificate $acme_certificate; ssl_certificate_key $acme_certificate_key; ssl_certificate_cache max=2; }
Izvor: opennet.ru
