Rilascio di nginx 1.16.0

Dopo un anno di sviluppo è presentata nuovo ramo stabile di un server HTTP ad alte prestazioni e di un proxy multi-protocollo nginx 1.16.0, che ha incorporato le modifiche accumulate nella versione principale 1.15.x. In futuro, tutte le modifiche nella versione stabile 1.16 saranno legate alla risoluzione di gravi bug e vulnerabilità. A breve verrà formata la versione principale nginx 1.17, nella quale continuerà lo sviluppo di nuove funzionalità. Per gli utenti normali, che non hanno l'esigenza di garantire la compatibilità con moduli di terze parti, si raccomanda è consigliato utilizzare il ramo principale, su cui ogni tre mesi vengono pubblicate nuove versioni del prodotto commerciale Nginx Plus.

I miglioramenti più evidenti, aggiunti durante la formazione della versione principale 1.15.x:

  • È stata aggiunta la possibilità di utilizzare variabili nelle direttive ‘ssl_certificate‘ e ‘ssl_certificate_key‘, che possono essere utilizzate per il caricamento dinamico dei certificati;
  • È stata aggiunta la possibilità di caricare certificati SSL e chiavi segrete da variabili senza l'uso di file intermedi;
  • Nel blocco «upstream» è stata implementata una nuova direttiva «random«, tramite la quale è possibile organizzare il bilanciamento del carico con scelta casuale del server per il passaggio della connessione;
  • Nel modulo ngx_stream_ssl_preread è stata implementata la variabile $ssl_preread_protocol,
    , che determina la versione più alta del protocollo SSL/TLS supportata dal client. La variabile consente di creare configurazioni per l'accesso utilizzando diversi protocolli con SSL e senza SSL attraverso una singola porta di rete durante il proxy del traffico utilizzando i moduli http e stream. Ad esempio, per organizzare l'accesso tramite SSH e HTTPS attraverso una sola porta 443, la porta predefinita può essere passata a SSH, ma se è definita una versione SSL, verrà passata a HTTPS.
  • Nel modulo upstream è stata aggiunta una nuova variabile «$upstream_bytes_sent«, che mostra il numero di byte inviati al server del gruppo;
  • Nel modulo stream nel contesto di una singola sessione è stata aggiunta la possibilità di elaborare più datagrammi UDP in arrivo dal client;
  • Nel modulo stream è stata aggiunta la direttiva «proxy_requests«, che stabilisce il numero di datagrammi ricevuti dal client, raggiunto il quale viene rimossa l'associazione tra il client e la sessione UDP esistente. Dopo aver ricevuto il numero specificato di datagrammi, il datagramma successivo ricevuto dallo stesso client avvia una nuova sessione;
  • Nella direttiva listen è stata aggiunta la possibilità di specificare intervalli di porte;
  • È stata aggiunta la direttiva «ssl_early_data» per abilitare la modalità 0-RTT nell'uso di TLSv1.3, che consente di mantenere i parametri di connessione TLS precedentemente concordati e ridurre a 2 il numero di RTT al ripristino di una connessione precedentemente stabilita;
  • Per configurare il keepalive per le connessioni in uscita (attivazione o disattivazione dell'opzione SO_KEEPALIVE per i socket) sono state aggiunte nuove direttive:
    • «proxy_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita al server proxy;
    • «fastcgi_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita al server FastCGI;
    • «grpc_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita al server gRPC;
    • «memcached_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita al server memcached;
    • «scgi_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita al server SCGI;
    • «uwsgi_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita al server uwsgi.
  • Nella direttiva «limit_req» è stato aggiunto un nuovo parametro «delay» che stabilisce un limite oltre il quale le richieste eccessive vengono ritardate;
  • Nel blocco «upstream» sono state aggiunte nuove direttive «keepalive_timeout» e «keepalive_requests» per definire limiti per il Keepalive;
  • È stata dichiarata obsoleta la direttiva «ssl», sostituita dal parametro «ssl» nella direttiva «listen». La determinazione dei certificati SSL mancanti viene ora effettuata durante la fase di test della configurazione quando si utilizza la direttiva «listen» con il parametro «ssl»;
  • Con l'uso della direttiva reset_timedout_connection, al verificarsi del timeout della connessione ora si chiudono con codice 444;
  • Gli errori SSL «http request», «https proxy request», «unsupported protocol» e «version too low» ora vengono registrati nel log con livello «info» anziché «crit»;
  • Aggiunta la supporto del metodo poll sui sistemi Windows con Windows Vista e versioni successive;
  • Resa possibile l'uso di TLSv1.3 con la compilazione con la libreria BoringSSL, e non solo con OpenSSL.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster