История версий Angie ADC#
Текущая версия#
Angie ADC 0.3.3
История изменений#
2025#
Angie ADC 0.3.3#
Дата выпуска: 24.06.25 Балансировщик нагрузки: возможность задать в директиве Балансировщик нагрузки: Одновременное наличие в директивах В В Запросы HTTP/3 могли зависать и завершаться по таймауту; исправление
портировано из nginx 1.29.0. Ранняя ошибка при установлении соединения HTTP/3 с проксируемым сервером могла
приводить к падению рабочего процесса. При проксировании по протоколу HTTP/3 число активных соединений
могло отображаться в статистике некорректно. Когда проксируемый сервер в режиме Обновлены базовые пакеты РЕД ОС 7.3. В образ включен пакет open-vm-tools версии 12.4.0.Добавления#
acme_dns_port
не только номер порта,
но и IP-адрес; поддерживаются IPv4 и IPv6.Исправления#
server_name
wildcard-домена и
совпадающих с ним доменов третьего уровня приводило к ошибке ACME-сервера при
выпуске сертификата для этих доменов в рамках одного ACME-клиента.stream
-модуле после успешного соединения с проксируемым сервером во
время пассивной проверки его статус в API статистики ошибочно продолжал
отображаться как unavailable
до завершения сессии.stream
-модуле отсчет времени неработоспособности в API статистики
мог остановиться или ошибочно сброситься, если проксируемый сервер находился в
состоянии unhealthy
.drain
оказывался недоступен,
попытка соединиться с другим сервером согласно настройкам
proxy_next_upstream
и аналогичным директивам могла не выполняться.Пакеты#
Angie ADC 0.3.2#
Дата выпуска: 02.06.25 Поддержка протокола VRRP для обеспечения отказоустойчивости. Поддержка Route Health Injection для учета состояния апстримов
при выборе маршрутов. Балансировщик нагрузки: Возможность задать файл в директиве Поддержка нескольких групп резервных проксируемых серверов,
с указанием уровня группы резервирования сервера
директивой Возможность группе резервных (backup) проксируемых HTTP-серверов оставаться
активной в случае, когда серверы из основной группы стали вновь доступны,
использующая директиву backup_switch permanent[=timeout]
в блоке Поддержка механизма TLS 1.3 Early Data (0-RTT) в Новый статус Параметр Параметр Отображение даты и времени сборки в поле Вся функциональность nginx 1.27.4, за
исключением директивы Поддержка сценария ручной настройки пула SNAT (SNAT Pool). Режим отказоустойчивости Active-Active по протоколу BGP. Добавлена статья по настройке проверок работоспосбности апстримов балансировщика. Дополнительные функции при работе с резервными копиями конфигурации балансировщика нагрузки в консоли Angie ADC: Можно вернуть рабочий статус конфигурации, которая ранее была помечена как нерабочая. Теперь нельзя пометить первую конфигурацию балансировщика как нерабочую. В консоль Angie ADC добавлена информация о решении и используемой версии (закладка "Об Angie ADC"). В справку командной строки (CLI) добавлено разбиение по функциям для более удобного поиска информации. Параметр Ошибка При сборке с поддержкой NTLS наследование директив
Cтатистика Функции#
Добавления#
proxy_cache_path
, в который между
запусками сервера будет сохраняться содержимое зоны разделяемой памяти с
индексом кэша; что избавляет от необходимости подгружать кэш после
перезагрузки и позволяет практически сразу вернуть сервер в работу.backup=level
в блоках stream
и http
.upstream
.stream
-модуле с
помощью директивы s_ssl_early_data
.busy
у проксируемых серверов в API статистики, означающий,
что число запросов на сервер достигло ограничения, заданного опцией
max_conns
.uri=
в директиве acme_hook
, который позволяет
переопределять строку запроса к внешнему приложению, в том числе, используя
переменные.renew_on_load
директивы acme_client
, позволяющий
форсировать обновление сертификата при загрузке конфигурации.build_time
объекта
/status/angie
API статистики, а также в выводе ключа командной строки
-V
.keepalive_min_timeout
(аналогичный функционал
уже существовал).Изменения#
enabled=off
в директиве acme_client
теперь отключает
только обновление сертификата для данного клиента, но сохраняет весь остальной
функционал; так, остается возможность использовать ключ и сертификат (при
наличии) через переменные $acme_cert_*
, а использование переменных
$acme_hook_*
и директив acme
не приводит к ошибкам.no valid domain name defined for ACME client
теперь возникает
только если на ACME-клиент есть ссылка из директивы acme
в блоке
server
, но ни один из доменов этого сервера не соответствует требованиям
ACME.Исправления#
proxy_ssl_certificate
и proxy_ssl_certificate_key
с
переменными работало некорректно.status_zone
в блоке server
HTTP-модуля могла
считаться некорректно, если запросы попадали в разные зоны статистики в рамках
одного соединения или на раннем этапе обработки запроса происходила ошибка;
проблема появилась в 0.2.0.
Angie ADC 0.2.1#
Дата выпуска: 14.04.2025. Исправлена ошибка в конфигурации adc-cli для виртуального устройства (VA) Angie ADC,
приводившая к получению Исправления#
404
при загрузке сертификата.
Angie ADC 0.2.0#
Дата выпуска: 25.03.2025. Настройка безопасного соединения (HTTPS). Загрузка и раздача статических файлов через балансировщик нагрузки. Резервное копирование и восстановление конфигурации балансировщика нагрузки: просмотр истории создания резервных копий; применение любой ранее созданной конфигурации; возможность пометить резервную копию конфигурации как нерабочую; возможность откатиться к последней рабочей версии конфигурации. Настройка модулей и функций через интерфейс Angie ADC CLI. Марштрутизация по протоколам BGP, OSPF, RIP и PBR. Реализация новых функций на уровне ядра системы: Route Health Injection; Настройка журналирования через syslog. Балансировщик нагрузки: Привязка HTTP-сессий для группы проксируемых серверов с запросом во внешнее
хранилище, настраиваемое директивой Поддержка валидации Система внешних вызовов в модуле ACME, настраиваемая с помощью директивы
ACME-модуль выводит в лог дополнительную информацию: точная причина обновления
сертификата, полный список доменов, идентификатор аккаунта пользователя,
длительные периоды неактивности (например, во время опросов), какой домен
выполняет валидацию. Такая информация позволяет легче диагностировать проблемы
на этапе перевыпуска сертификатов, а также прописывать DNS-запись CAA. Параметр Поддержка переменных в директиве Совместимость HTTP-модуля сжатия GZip с версиями библиотеки Директива Директивы Поддержка кросс-компиляции — система сборки теперь может использовать
скрипт-обертку для запуска автотестов, что позволяет подготовить сборку без
запуска тестовых программ непосредственно на целевой платформе. Вся функциональность nginx 1.27.3. Веб-консоль Angie ADC: возможность поменять логин и пароль; просмотр уже введенного пароля; удаление пользователей консоли. Добавлена команда Добавлена конечная точка для сбора информации о состоянии системы (загрузка CPU, память, диск,
состояние апстримов балансировщика нагрузки и т.д.). Добавлена настройка для изменения В справку добавлены сценарии по настройке Angie ADC: Балансировщик нагрузки: При плавном завершении старых рабочих процессов keepalive-соединения теперь
закрываются только после истечения таймаута, заданного директивой
Отключено кэширование значений переменных stream-модуля
Недостаточная проверка в обработке виртуальных серверов при использовании SNI
в TLSv1.3 позволяла повторно использовать SSL-сессию в контексте другого
виртуального сервера, обходя проверку клиентских SSL-сертификатов
(CVE-2025-23419);
исправление портировано из nginx 1.27.4. Модуль GSLB теперь автоматически перезапускается после изменения конфигурации. Балансировщик нагрузки: HTTP/3-клиенты могли отключаться по таймауту при использовании Проксирование по HTTP/3 с использованием переменных в директиве
Кэширование HTTP/3-ответов при использовании динамической таблицы сжатия
заголовка могло привести к падению рабочего процесса. Некоторые SSL-рукопожатия могли не учитываться в счетчиках статистики для
stream-модуля. Настройки HTTP/3-проксирования, указанные на уровне При проксировании по протоколу HTTP/3 с включенной поддержкой NTLS директива
Использование директивы Ошибки декодирования потока HTTP/3 могли приводить к падению рабочего процесса
при закрытии QUIC-соединения; исправление портировано из nginx 1.27.4. Отправка пакетов с согласованием версии протокола QUIC могла привести к
бесконечному циклу обмена пакетами; исправление портировано из nginx 1.27.4. Использование DNS-валидации без хуков в ACME-модуле на
некоторых конфигурациях могло привести к падению рабочего процесса. Активные проверки, заданные директивой Запросы к API для получения значений статистики из отдельной зоны, которая
была задана через переменные, могли приводить к зацикливанию рабочего
процесса. HTTP/3-запросы не учитывались в зонах статистики. TLS-согласования по протоколу QUIC не учитывались в статистике по SSL. Использование доменных имен, начинающихся с точки, в директиве
Исправление уязвимостей.Функции#
Добавления#
sticky
в режиме learn
с
помощью параметров remote_action
и remote_result
. Это
позволяет конфигурировать привязку клиентских сессий к балансируемым серверам
в кластерном режиме, когда группа балансировщиков объединяется общим
хранилищем и направляет запросы клиента в рамках одной сессии на один и тот же
сервер вне зависимости от того, на какой балансировщик они попали.DNS-01
посредством ответа на DNS-запрос от
ACME-сервера, что позволяет автоматически запрашивать сертификаты любых типов,
в том числе wildcard.acme_hook
, которая позволяет обеспечить валидацию доменных имен
посредством внешнего обработчика для интеграции с различными сервисами и
провайдерами DNS-хостинга.account_key
в директиве acme_client
, позволяющий
переиспользовать существующий ключ аккаунта ACME-сервера, а не генерировать
новый автоматически.status_zone
в модулях HTTP и stream
позволяет динамически распределять статистику по нескольким зонам в рамках
одного блока location
или server
. Это, в частности, пригодится
для случая, когда один блок server
обрабатывает несколько виртуальных
хостов.zlib-ng
2.2.0 и выше, которые ранее могли приводить к появлению в логе ошибок вида
[alert] gzip filter failed to use preallocated memory
.max_headers
, ограничивающая максимальное количество полей
заголовка в HTTP-запросе для лучшей защиты от DoS-атак. Спасибо Максиму Дунину
(freenginx) и Максиму Евменкину.http3_max_table_capacity
и
proxy_http3_max_table_capacity
для настройки ограничения на размер
динамической таблицы сжатия заголовка в HTTP/3.reload
в Angie ADC CLI для балансировщика нагрузки и сборщика метрик Prometheus.host
и port
для /metrics
.Изменения#
lingering_timeout
. Такое поведение позволяет предотвратить возможные
ошибки на клиенте при получении ответа в этот момент. Спасибо Максиму Дунину
(freenginx).v_ssl_server_name
, v_ssl_server_cert_type
,
v_ssl_preread_protocol
и v_ssl_preread_server_name
, что
позволит получить актуальные значения при использовании виртуальных серверов.Безопасность#
Исправления#
0-RTT
.
Проблема была унаследована из nginx в версии 0.1.0.proxy_pass
и без указания блока upstream
могло приводить к
падению рабочего процесса.http
или
server
, могли игнорироваться.proxy_ssl_certificate
не работала.status_zone
в блоке server
HTTP-модуля
приводило к избыточному логированию пустых запросов в access_log
во
время TLS-согласований.upstream_probe
в
stream
-модуле, могли приводить к падению рабочего процесса.server_name
, могло привести к ошибке обновления сертификата по
протоколу ACME.
Angie ADC 0.1.0#
Дата выпуска: 07.09.2024.
Регистрация в Реестре ПО: номер 24972 от 27.11.2024. Балансировщик нагрузки: Полная функциональность на основе Angie PRO 1.7.0. Дополнительные функции: Балансировка с учетом полосы пропускания до или от проксируемых серверов,
с настраиваемым коэффициентом сглаживания, использующая директиву
Балансировка с учетом полосы пропускания, расчитываемой
по количеству пакетов в единицу времени, до или от проксируемых stream-серверов,
использующая директиву Модуль GSLB. Веб-консоль Angie ADC: просмотр статистики балансировщика нагрузки; управление пользователями.Функции#
least_bandwidth
в блоках upstream
и http
.least_packets
в блоке upstream
.