Rilascio di nginx 1.16.0

Dopo un anno di sviluppo è stata presentata nuova branch stabile del server HTTP ad alte prestazioni e del proxy multi-protocollo nginx 1.16.0, che ha incorporato le modifiche accumulate nella versione principale 1.15.x. In seguito, tutte le modifiche nella versione stabile 1.16 saranno concentrate sulla risoluzione di errori gravi e vulnerabilità. A breve sarà formata la versione principale di nginx 1.17, all'interno della quale continuerà lo sviluppo di nuove funzionalità. Per gli utenti normali, che non hanno bisogno di garantire compatibilità con moduli di terze parti, si raccomanda è consigliabile utilizzare la branch principale, sulla quale ogni tre mesi vengono rilasciate nuove versioni del prodotto commerciale Nginx Plus.

Le migliorie più significative aggiunte durante lo sviluppo 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 introdotta la possibilità di caricare certificati SSL e chiavi segrete da variabili senza utilizzare file intermedi;
  • Nel blocco «upstream» è stata implementata una nuova direttiva «random«, attraverso la quale è possibile organizzare il bilanciamento del carico con selezione casuale del server per il passaggio della connessione;
  • Nel modulo ngx_stream_ssl_preread è stata introdotta la variabile $ssl_preread_protocol,
    , che determina la versione massima del protocollo SSL/TLS supportata dal client. Questa variabile permette di creare configurazioni per l'accesso utilizzando vari protocolli con e senza SSL attraverso una singola porta di rete durante il proxying del traffico con i moduli http e stream. Ad esempio, per consentire l'accesso tramite SSH e HTTPS attraverso una singola porta 443, la porta predefinita può essere instradata su SSH, ma se viene definita una versione SSL, instradare su 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 all'interno di una sessione è stata aggiunta la possibilità di gestire più datagrammi UDP in arrivo dal client;
  • Nel modulo stream è stata introdotta la direttiva «proxy_requests«, che determina il numero di datagrammi ricevuti dal client, al raggiungimento del quale viene rimossa l'associazione tra il client e la sessione UDP esistente. Dopo aver ricevuto il numero specificato di datagrammi, il successivo datagramma ricevuto dallo stesso client inizia una nuova sessione;
  • Nella direttiva listen è stata aggiunta la possibilità di specificare intervalli di porte;
  • É stata aggiunta la direttiva "ssl_early_data» per attivare la modalità 0-RTT quando si utilizza TLSv1.3, che consente di mantenere i parametri TLS concordati in precedenza e ridurre a 2 il numero di RTT durante la ripresa di una connessione già stabilita;
  • Per configurare il keepalive per le connessioni in uscita (attivando o disattivando l'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 verso il server di proxy;
    • «fastcgi_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita verso il server FastCGI;
    • «grpc_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita verso il server gRPC;
    • «memcached_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita verso il server memcached;
    • «scgi_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita verso il server SCGI;
    • «uwsgi_socket_keepalive» — configura il comportamento del «TCP keepalive» per le connessioni in uscita verso il server uwsgi.
  • Nella direttiva «limit_req è stato aggiunto un nuovo parametro «delay», che imposta un limite, oltre il quale le richieste in eccesso vengono ritardate;
  • Nel blocco «upstream» sono state aggiunte nuove direttive «keepalive_timeout» e «keepalive_requests» per impostare limiti per Keepalive;
  • È stata dichiarata obsoleta la direttiva «ssl», sostituita dal parametro «ssl» nella direttiva «listen». La definizione dei certificati SSL mancanti avviene ora durante il test di configurazione utilizzando la direttiva «listen» con il parametro «ssl»;
  • Con l'uso della direttiva reset_timedout_connection, al termine del timeout della connessione, ora si chiudono utilizzando il codice 444;
  • Gli errori SSL «http request», «https proxy request», «unsupported protocol» e «version too low» ora vengono registrati nel log con livello «info» invece che «crit»;
  • È stato aggiunto il supporto per il metodo poll sui sistemi Windows con Windows Vista e versioni successive;
  • È stata garantita la possibilità di utilizzare TLSv1.3 nella compilazione con la libreria BoringSSL, e non solo con OpenSSL.

Fonte: opennet.ru

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