versió nginx 1.16.0

Després d'un any de desenvolupament representat per nova branca estable de servidor HTTP d'alt rendiment i servidor intermediari multiprotocol nginx 1.16.0, que va absorbir els canvis acumulats dins de la branca principal 1.15.x. En el futur, tots els canvis a la branca estable 1.16 estaran relacionats amb l'eliminació d'errors i vulnerabilitats greus. Aviat es formarà la branca principal de nginx 1.17, dins de la qual continuarà el desenvolupament de noves funcions. Per als usuaris corrents que no tinguin la tasca de garantir la compatibilitat amb mòduls de tercers, es recomana utilitzeu la branca principal, sobre la base de la qual es formen llançaments del producte comercial Nginx Plus cada tres mesos.

Les millores més notables afegides durant el desenvolupament de la branca upstream 1.15.x:

  • Добавлена возможность использования переменных в директивах ‘certificat ssl' и 'clau_certificat_ssl‘, что можно использовать для динамической загрузки сертификатов;
  • Добавлена возможность загрузки SSL-сертификатов и секретных ключей из переменных без использования промежуточных файлов;
  • В блоке «riu amunt» реализована новая директива «atzar«, при помощи которой можно организовать балансировку нагрузки со случайным выбором сервера для проброса соединения;
  • En el mòdul ngx_stream_ssl_preread реализована переменная $ssl_preread_protocol,
    которая определяет наибольшую версию протокола SSL/TLS, которую поддерживает клиент. Переменная позволяет создавать конфигурации для доступа с использованием различных протоколов с SSL и без SSL через один сетевой порт при проксировании трафика с использованием модулей http и stream. Например, для организации доступа по SSH и HTTPS через один порт 443 порт по умолчанию можно пробрасывать на SSH, но если определена версия SSL пробрасывать на HTTPS.

  • В модуль upstream добавлена новая переменная «$upstream_bytes_sent«, которая отображает число байт, переданных на сервер группы;
  • Al mòdul corrent в рамках одного сеанса добавлена возможность обработки нескольких входящих UDP-датаграмм от клиента;
  • В модуль stream добавлена директива «proxy_requests«, задающее число датаграмм, полученных от клиента, по достижении которого удаляется привязка между клиентом и существующей UDP-сессией. После получения указанного количества датаграмм следующая датаграмма, полученная от того же клиента, начинает новую сессию;
  • В директиве listen появилась возможность указания диапазонов портов;
  • Directiva afegida "ssl_early_data» для включения режима 0-RTT при использовании TLSv1.3, который позволяет сохранить ранее согласованные параметры TLS-соединения и снизить до 2 число RTT при возобновлении ранее установленного соединения;
  • Для настройки keepalive для исходящих соединений (включения или выключения опции SO_KEEPALIVE для сокетов) добавлены новые директивы:

    • «proxy_socket_keepalive» — конфигурирует поведение «TCP keepalive» для исходящих соединений к проксируемому серверу;
    • «fastcgi_socket_keepalive» — конфигурирует поведение «TCP keepalive» для исходящих соединений к FastCGI-серверу;
    • «grpc_socket_keepalive» — конфигурирует поведение «TCP keepalive» для исходящих соединений к gRPC-серверу;
    • «memcached_socket_keepalive» — конфигурирует поведение «TCP keepalive» для исходящих соединений к серверу memcached;
    • «scgi_socket_keepalive» — конфигурирует поведение «TCP keepalive» для исходящих соединений к SCGI-серверу;
    • «uwsgi_socket_keepalive» — конфигурирует поведение «TCP keepalive» для исходящих соединений к uwsgi-серверу.
  • В директиву «limit_req» добавлен новый параметр «delay», задающий лимит, по достижении которого избыточные запросы задерживаются;
  • В блок «upstream» добавлены новые директивы «keepalive_timeout» и «keepalive_requests» для задания лимитов для Keepalive;
  • Объявлена устаревшей директива «ssl», на смену которой пришёл параметр «ssl» в директиве «listen». Определение отсутствующих SSL-сертификатов теперь производится на этапе тестирования конфигурации при использовании в настройках директивы «listen» с параметром «ssl»;
  • При использовании директивы reset_timedout_connection при истечении таймаута соединения теперь закрываются с применением кода 444;
  • SSL-ошибки «http request», «https proxy request», «unsupported protocol» и «version too low» теперь отображаются в логе с уровнем «info» вместо «crit»;
  • Добавлена поддержка метода poll на системах Windows при использовании Windows Vista и новее;
  • Обеспечена возможность использования TLSv1.3 при сборке с библиотекой BoringSSL, а не только с OpenSSL.

Font: opennet.ru

Afegeix comentari