Byla představena verze výkonného HTTP serveru a vícetransportního proxy serveru Angie 1.8.0, odvozeného od Nginx skupinou bývalých vývojářů projektu, kteří odešli z firmy F5 Network. Zdrojové kódy Angie jsou dostupné pod licencí BSD. Projekt získal certifikáty kompatibility s ruskými operačními systémy Red OS, Astra Linux Special Edition, Rosa Chrome Server, Alt a FSTEC verze Alt.
Rozvoj projektu zajišťuje společnost „Webový server“, založená na podzim 2022, která získala investice ve výši 1 milion dolarů. Mezi spoluvlastníky společnosti Webový server patří: Valentin Bartenev (vedoucí týmu, který rozvíjel produkt Nginx Unit), Ivan Polujanov (bývalý vedoucí front-end vývojářů Rambler a Mail.Ru), Oleg Mamonov (vedoucí týmu technické podpory NGINX Inc) a Ruslan Jermilov (ru@FreeBSD.org).
Změny ve verzi Angie 1.8.0:
- Byly rozšířeny možnosti modulu http_acme, určeného k automatizaci získávání a aktualizace certifikátů od certifikační autority Let’s Encrypt, používajícího protokol ACME (Automatic Certificate Management Environment):
- Byla přidána podpora metody ověřování DNS-01, nezbytné pro získání certifikátů s maskami pokrývajícími skupinu subdomén (například *.example.com).
- Byla přidána direktiva „acme_hook“, pomocí které je možné nastavit volání externích aplikací s obslužnými procesy pro potvrzení vlastnictví domény. Tyto obslužné procesy mohou být použity pro integraci s externími službami a poskytovateli DNS.
- Pro usnadnění diagnostiky byly do logu přidány další informace, jako je důvod aktualizace certifikátu, úplný seznam domén., identifikátor účtu zákazníka, údaje o neaktivitě a kontrolovaná doména.
- Do direktivy „acme_client“ byl přidán parametr „account_key“ pro opětovné použití stávajícího přístupového klíče k serveru ACME, místo automatického generování nového klíče.
- Byla zavedena možnost uvést proměnné v direktivě „status_zone“, použité v modulech stream a http. Proměnné lze použít pro dynamické sledování statistik vázaných na jednotlivé virtuální hosty, definované v jednom bloku „location“ nebo „server“. server { listen 80; server_name *.example.com; status_zone $host zone=host_zone:10; location / { proxy_pass http://example.com; } }
- Modul pro kompresi gzip je nyní kompatibilní s knihovnou zlib-ng 2.2 a novějšími verzemi.
- Byla přenesena implementace direktivy max_headers z projektu freenginx, která omezuje maximální počet HTTP hlaviček v požadavku, což může být užitečné pro ochranu proti DoS útokům.
- Byly přidány direktivy http3_max_table_capacity a proxy_http3_max_table_capacity pro omezení velikosti tabulky používané pro kompresi hlaviček v HTTP/3.
- Byla přidána podpora pro kros-kompilaci — nyní je možné sestavovat bez nutnosti spouštění skriptů autotest na cílové platformě.
- Z freenginx bylo přeneseno změnění, které řeší problém s chybami doručování odpovědí během jemného ukončování procesů (gracefully shutdown) — keep-alive spojení nyní končí pouze po uplynutí timeoutu nastaveného v direktivě lingering_timeout.
- Aby bylo možné získat aktuální hodnoty při použití virtuálních hostitelů, v modulu stream bylo vypnuto cachování proměnných $ssl_server_name, $ssl_server_cert_type, $ssl_preread_protocol a $ssl_preread_server_name.
- Z repozitáře projektu nginx byly přeneseny změny navržené ve verzi nginx 1.27.3.
Zdroj: opennet.ru
