
Выпущена новая стабильная ветка веб-сервера Nginx версии 1.30.0. Этот релиз включает в себя значительные улучшения благодаря интеграции современных протоколов и технологий, таких как ECH, MPTCP и HTTP/2 для прокси, с целью повышения безопасности, производительности и отказоустойчивости перенесенные из основной ветки разработки 1.29.x.
14 апреля 2026 года состоялся выпуск релиза Nginx 1.30.0 с добавлением значительных улучшений и новых функций:
- Добавлена поддержка TLS-расширения Encrypted ClientHello (ECH) для повышения конфиденциальности.
- Реализована поддержка Multipath TCP (MPTCP) для одновременного использования нескольких сетевых интерфейсов.
- Включена поддержка HTTP/2 для проксирования запросов к бэкендам.
- Появилась встроенная поддержка «липких» сессий (sticky sessions) с методами cookie, route и learn.
- Реализована поддержка HTTP-кода 103 Early Hints для ускорения загрузки страниц.
- Добавлена директива
max_headersдля ограничения числа HTTP-заголовков в запросе. - По умолчанию отключено сжатие сертификатов TLSv1.3.
- По умолчанию включен HTTP/1.1 с keep-alive для проксирования к бэкендам.
- Добавлены новые переменные для логирования и маршрутизации ($request_port, $ssl_sigalg и др.).
- Улучшена поддержка QUIC, добавлена возможность загрузки ключей из аппаратных токенов.
Новые Функции
Encrypted ClientHello (ECH):
- Реализована поддержка TLS-расширения ECH, которое шифрует всё сообщение
ClientHello, включая имя сервера (SNI) и Pre-Shared Key (PSK). - Это значительно повышает конфиденциальность, предотвращая утечки информации о посещаемых сайтах даже от сетевых наблюдателей.
- Требуется OpenSSL 4.0 или новее. Настройка осуществляется через директиву
ssl_ech_file.
Multipath TCP (MPTCP):
- Добавлена нативная поддержка протокола MPTCP, позволяющего использовать несколько сетевых интерфейсов одновременно для одного TCP-соединения.
- Обеспечивает повышенную пропускную способность (агрегация каналов) и отказоустойчивость (мгновенное переключение при обрыве одного интерфейса).
- Включается параметром
multipathв директивеlisten. Требуется поддержка на уровне ядра Linux (начиная с 5.6).
HTTP/2 для Проксирования Бэкендов:
- Модуль
ngx_http_proxyтеперь полностью поддерживает HTTP/2 при обращении к вышестоящим серверам (upstream). - Это ускоряет взаимодействие с бэкендами за счет мультиплексирования и экономии соединений, особенно полезно для gRPC.
- Настройка осуществляется директивой
proxy_http_version 2.0;.
- Модуль
HTTP/103 Early Hints:
- Реализована поддержка HTTP-кода 103, позволяющего серверу отправлять браузеру подсказки о предзагрузке ресурсов (например, CSS, JS) до получения полного ответа от бэкенда.
- Ускоряет загрузку страниц, позволяя браузеру начать загрузку критически важных ресурсов параллельно.
- Включается директивой
early_hints on;.
Sticky Sessions (Привязка Сессий):
- Встроенная поддержка механизма привязки сессий клиентов к определенным серверам в группе.
- Доступны три метода:
cookie(автоматическая установка cookie),route(назначение маршрута бэкендом) иlearn(анализ ответов апстрима). - Настраивается с помощью директивы
stickyв блокеupstream.
Keep-Alive по Умолчанию для Прокси:
- Модуль
ngx_http_proxyтеперь по умолчанию использует HTTP/1.1 с включенным режимомkeep-aliveпри обращении к бэкендам. - Это снижает количество TCP-соединений и задержек между Nginx и бэкендами.
- Модуль
Улучшения Безопасности и Ограничений
- Директива
max_headers:- Ограничивает максимальное количество HTTP-заголовков в запросе, защищая от атак типа «request smuggling» или DoS. При превышении возвращается ошибка 400.
- Сжатие Сертификатов TLSv1.3:
- По умолчанию отключено для снижения риска атак уровня TLS (например, CRIME). Может быть включено явно с помощью
ssl_certificate_compression on;.
- По умолчанию отключено для снижения риска атак уровня TLS (например, CRIME). Может быть включено явно с помощью
- Исправленные Уязвимости:
- В релиз вошли исправления ряда уязвимостей, включая переполнение буфера в модуле обработки медиафайлов, ошибки сегментации при аутентификации, проблемы с DNS-записями и проверкой клиентских сертификатов в модуле
stream.
- В релиз вошли исправления ряда уязвимостей, включая переполнение буфера в модуле обработки медиафайлов, ошибки сегментации при аутентификации, проблемы с DNS-записями и проверкой клиентских сертификатов в модуле
- Директива
Другие Важные Изменения
- HTTP/2 для Бэкендов: Добавлена поддержка HTTP/2 при обращении к бэкендам.
- Загрузка Ключей из Аппаратных Токенов: Возможность загрузки ключей через OpenSSL.
- Сборка с AWS-LC: Добавлена поддержка сборки с криптографической библиотекой AWS-LC от Amazon.
- Новые Переменные: Добавлены переменные
$request_port,$is_request_port,$ssl_sigalg,$ssl_client_sigalgдля более гибкого логирования и маршрутизации. - Совместимость: Обеспечена совместимость с OpenSSL 4.0.