28.02.2024

Выпуск Angie 1.4.0, российского форка Nginx

Опубликован выпуск высокопроизводительного HTTP-сервера и многопротокольного прокси-сервера Angie 1.4.0, ответвлённого от Nginx группой бывших разработчиков проекта, уволившихся из компании F5 Network. Исходные тексты Angie доступны под лицензией BSD. Проект получил сертификаты совместимости с российскими операционными системами Ред ОС, Astra Linux Special Edition, Альт и ФСТЭК-версии Альт.

Сопровождением разработки занимается компания «Веб-сервер«, образованная прошлой осенью и получившая инвестиции в размере 1 млн долларов. Среди совладельцев компании Веб-сервер: Валентин Бартенев (лидер команды, развивавшей продукт Nginx Unit), Иван Полуянов (бывший руководитель фронтэнд-разработчиков Rambler и Mail.Ru), Олег Мамонтов (руководитель команды техподдержки NGINX Inc) и Руслан Ермилов (ru@FreeBSD.org).

Изменения в выпуске Angie 1.4.0:

  • В модуле http_proxy добавлена возможность использования протокола HTTP/3 при соединении с вышестоящими проксируемыми серверами (поддержка HTTP/3 для клиентских соединений присутствует в Angie с версии 1.2.0). Для настройки проксируемых соединений на базе протоколов HTTP/3 и Quic доступны директивы proxy_http_version, proxy_quic_* и proxy_http3_*.

    HTTP/3 определяет использование протокола QUIC (Quick UDP Internet Connections) в качестве транспорта для HTTP/2. QUIC представляет собой надстройку над протоколом UDP, поддерживающую мультиплексирование нескольких соединений и обеспечивающую методы шифрования, эквивалентные TLS/SSL. Протокол был создан в 2013 году компанией Google в качестве альтернативы связке TCP+TLS для Web, решающей проблемы с большим временем установки и согласования соединений в TCP и устраняющей задержки при потере пакетов в процессе передачи данных.

  • Из репозитория проекта nginx перенесены изменения, накопившиеся в nginx 1.25.3.
  • В директиву «server«, применяемую в блоке настроек «upstream», добавлена опция «slow_start» для плавного ввода проксируемого сервера в работу после сбоя. Опция задаёт время восстановления веса сервера, возвращающегося к работе после сбоя, при использовании балансировки нагрузки методом «round-robin» или «least_conn».
  • В модуль «stream» добавлена директива «mqtt_preread«, при указании которой имя пользователя и идентификатор клиента извлекаются из пакета CONNECT протокола MQTT и записываются в переменные $mqtt_preread_username и $mqtt_preread_clientid.
  • Добавлена директива «mp4_limit_rate» для ограничения скорости отдачи MP4-файлов клиенту пропорционально битрейту, а также директива «mp4_limit_rate_after» для определения начального размера переданных данных, до достижения которого не применяется ограничение.
  • Сформированы пакеты для дистрибутива Alpine Linux 3.19.
  • Добавлен динамически загружаемый модуль «angie-module-auth-ldap» для аутентификации с использованием LDAP.
  • Обновлены версии модулей angie-module-headers-more 0.36, angie-module-ndk 0.3.3 и angie-module-opentracing 0.33.0.
  • Открыт код модуля Console Light с реализацией интерфейса для мониторинга активности в реальном режиме времени, позволяющем отслеживать ключевые метрики производительности сервера.
  • Добавлен пакет angie-module-modsecurity для интеграции с WAF-системой (Web Application Firewall) ModSecurity, предоставляющей правила и фильтры для блокирования широкого спектра атак на web-приложения.

Источник: https://www.opennet.ru/opennews/art.shtml?num=60276 Источник.