È stata presentata l'uscita del server HTTP ad alte prestazioni e del proxy multiprotocollo Angie 1.8.0, derivato da Nginx da un gruppo di ex sviluppatori del progetto, che hanno lasciato l'azienda F5 Network. I codici sorgente di Angie sono disponibili con licenza BSD. Il progetto ha ottenuto certificati di compatibilità con i sistemi operativi russi Red OS, Astra Linux Special Edition, Rosa Chrome Server, Alt e la versione FSTEK di Alt.
La compagnia "Web Server", fondata nell'autunno del 2022 e con un investimento di 1 milione di dollari, si occupa dello sviluppo. Tra i co-proprietari della compagnia Web Server: Valentin Bartenyev (team leader che ha sviluppato il prodotto Nginx Unit), Ivan Polyayanov (ex responsabile dello sviluppo frontend di Rambler e Mail.Ru), Oleg Mamontov (responsabile del team di supporto di NGINX Inc) e Ruslan Ermilov (ru@FreeBSD.org).
Modifiche in Angie 1.8.0:
- Espanse le capacità del modulo http_acme, destinato ad automatizzare l'ottenimento e l'aggiornamento dei certificati dall'autorità di certificazione Let's Encrypt, utilizzando il protocollo ACME (Automatic Certificate Management Environment):
- Aggiunta la supporto per il metodo di verifica DNS-01, necessario per ottenere certificati con maschere che coprono un gruppo di sotto-domini (ad esempio, *.example.com).
- Aggiunta la direttiva "acme_hook", che consente di configurare la chiamata di applicazioni esterne con gestori del processo di conferma della proprietà del dominio. Tali gestori possono essere utilizzati per l'integrazione con servizi esterni e fornitori DNS.
- Per semplificare la diagnosi, è stata aggiunta ulteriore informazione nel log, come il motivo dell'aggiornamento del certificato, l'intera lista domini, l'identificativo dell'account cliente, informazioni sull'inattività e il dominio verificato.
- Nella direttiva "acme_client" è stato aggiunto il parametro "account_key" per riutilizzare una chiave di accesso esistente per server ACME, invece di generare automaticamente una nuova chiave.
- Implementata la possibilità di specificare variabili nella direttiva "status_zone", utilizzata nei moduli stream e http. Le variabili possono essere usate per il monitoraggio dinamico delle statistiche in relazione a singoli host virtuali definiti in un blocco "location" o "server". server { listen 80; server_name *.example.com; status_zone $host zone=host_zone:10; location / { proxy_pass http://example.com; } }
- Nel modulo di compressione gzip è stata garantita la compatibilità con la libreria zlib-ng 2.2 e con versioni successive.
- Dallo progetto freenginx è stata traslata l'implementazione della direttiva max_headers, che limita il numero massimo di intestazioni HTTP in una richiesta, il che può essere utile per proteggere da attacchi DoS.
- Aggiunte le direttive http3_max_table_capacity e proxy_http3_max_table_capacity per limitare la dimensione della tabella utilizzata per la compressione delle intestazioni in HTTP/3.
- Aggiunta la supporto per la cross-compilazione: ora è possibile effettuare la build senza la necessità di eseguire script autotest sulla piattaforma di destinazione.
- Privato di freenginx il cambiamento che risolve il problema dei messaggi di errore durante la chiusura soft dei processi gestori (gracefully shutdown): ora le connessioni keep-alive vengono chiuse solo dopo la scadenza del timeout impostato nella direttiva lingering_timeout.
- Per ottenere valori aggiornati quando si utilizzano host virtuali, nel modulo stream è stata disabilitata la cache delle variabili $ssl_server_name, $ssl_server_cert_type, $ssl_preread_protocol e $ssl_preread_server_name.
- Dalla repository del progetto nginx sono stati trasferiti cambiamenti proposti nella versione nginx 1.27.3.
Fonte: opennet.ru
