Historial de Versiones de Angie PRO#

2025#

Angie PRO 1.10.2#

Fecha de lanzamiento: 21.08.2025.

Correcciones de errores#

  • La configuración del módulo proxy en el bloque http podía romper la funcionalidad de módulos que usan el bloque client para solicitudes salientes; el error había aparecido en 1.10.0.

  • Habilitar proxy_ignore_client_abort junto con módulos que usan el bloque client para solicitudes salientes podía llevar a fallos del proceso worker; el error había aparecido en 1.10.0.

  • Si un solo servidor estaba preconfigurado en un grupo upstream, los servidores añadidos a través de la API de Docker podrían no incluirse en el balanceo de carga.

  • Si el único servidor en un grupo upstream fue añadido a través de la API de Docker, podría ser excluido del balanceo de carga cuando se detectara que no estaba disponible.

Paquetes#


Angie PRO 1.10.1#

Fecha de lanzamiento: 17.07.2025.

Cambios#

  • Las directivas especificadas en el bloque client ahora solo pueden ser heredadas por bloques location declarados explícitamente dentro de ese bloque, por lo que no afectan la configuración de otros módulos que usan implícitamente el bloque client para solicitudes salientes.

Características#

  • El soporte para múltiples bloques client permite agrupar configuraciones comunes para diferentes bloques location dentro de cada bloque, lo que mitiga la duplicación de configuración.

Correcciones de errores#

  • Cuando se usaba el parámetro reuseport en la directiva listen, todas las conexiones a la dirección y puerto especificados eran manejadas por un solo proceso worker; el error había aparecido en la versión 1.10.0.

  • Acceder a variables especiales $stream_* fuera de la solicitud de sesión persistente stream causaba un fallo del proceso worker.

  • Un handshake HTTP/3 con un servidor upstream podría fallar con la biblioteca OpenSSL versión 3.5.0 o posterior si el modo retry del protocolo QUIC estaba activo en el servidor.

Angie PRO 1.10.0#

Fecha de lanzamiento: 03.07.2025.

Características#

  • Recuperación automática y actualización dinámica de grupos de servidores proxy basada en etiquetas de contenedores Docker (o Podman), configurada usando la directiva docker_endpoint. Esto permite el monitoreo en tiempo real de eventos de inicio y parada de contenedores a través del endpoint de API de Docker especificado, y permite que sus direcciones sean añadidas o eliminadas del grupo upstream según las etiquetas, sin requerir una recarga de configuración.

  • Soporte para adquisición automática de certificados TLS a través del protocolo ACME en el módulo stream, configurado usando la directiva acme y variables como $acme_cert_* y $acme_cert_key_*.

  • Vinculación de sesiones stream a un grupo de servidores proxy usando una solicitud HTTP a almacenamiento externo, configurable a través de la directiva sticky en modo learn con parámetros remote_action, remote_result, y remote_uri. Esto permite persistencia de sesión en entornos agrupados donde un grupo de balanceadores de carga comparte almacenamiento externo y enruta solicitudes de cliente al mismo servidor dentro de una sesión, independientemente de qué balanceador reciba la solicitud.

  • El nuevo parámetro norefresh para la directiva sticky (en modo learn) deshabilita la renovación automática de sesión al usarse.

  • Nuevo modo de sesión para sticky, en el cual las sesiones se almacenan solo en un servidor remoto y siempre se recuperan de él. Esto permite un almacenamiento en caché flexible de respuestas del servidor remoto en el módulo proxy.

  • Capacidad de mantener servidores de respaldo stream activos incluso después de que el grupo de servidores principal esté disponible nuevamente, usando la directiva backup_switch permanent[=timeout] en el bloque upstream.

  • Soporte para conexiones MPTCP usando el parámetro multipath en la directiva listen. Gracias a Maxim Dounin (freenginx), Maxime Dourov, y Anthony Doeraene.

  • Nuevo bloque client para configurar solicitudes HTTP internas iniciadas por varios módulos.

  • Incluye todas las características de nginx 1.27.5, incluyendo control de congestión CUBIC para conexiones QUIC.

Correcciones de errores#

  • Para servidores upstream en modo drain, el contador de tiempo de inactividad en la API de estadísticas no se detenía después de que el servidor se volviera saludable nuevamente según las verificaciones de salud pasivas.

Paquetes#

14.07.2025

Angie PRO 1.9.1#

Fecha de lanzamiento: 29.05.2025.

Características#

  • Soporte para direcciones IP junto con números de puerto en la directiva acme_dns_port; se permiten tanto IPv4 como IPv6.

Correcciones de errores#

  • Usar tanto un dominio comodín como dominios de tercer nivel coincidentes en directivas server_name podía causar que el servidor ACME fallara al emitir un certificado para estos dominios bajo un solo cliente ACME.

  • En el módulo stream, después de una conexión exitosa al servidor proxy durante una verificación pasiva, su estado en la API de estadísticas se mostraba erróneamente como unavailable hasta que terminara la sesión.

  • El contador de tiempo de inactividad en la API de estadísticas podría haberse detenido o sido incorrectamente reiniciado mientras el servidor proxy en el módulo stream estaba en el estado unhealthy.

  • Las solicitudes HTTP/3 podrían estancarse y agotar el tiempo de espera; la corrección fue portada desde nginx 1.29.0.

  • Un error temprano al establecer una conexión HTTP/3 a un servidor proxy podía causar que un proceso worker fallara.

  • Al hacer proxy a través del protocolo HTTP/3, el número de conexiones activas en las estadísticas podía mostrarse incorrectamente.

  • Cuando el servidor proxy en modo drain se volvía no disponible, el intento de conectar a otro servidor, según las directivas proxy_next_upstream y similares, podría no haber ocurrido.

Paquetes#

Angie PRO 1.9.0#

Fecha de lanzamiento: 11.04.2025.

Características#

  • La capacidad de especificar un archivo en la directiva proxy_cache_path, donde se guardará el contenido de la zona de memoria compartida con el índice de caché entre inicios del servidor; esto elimina la necesidad de recargar la caché después de un reinicio y permite que el servidor vuelva a estar en línea casi inmediatamente.

  • Usar la directiva backup_switch permanent[=timeout] en el bloque upstream del módulo HTTP permite que un grupo de servidores de respaldo permanezca activo cuando los servidores del grupo principal vuelvan a ser accesibles.

  • Soporte de TLS 1.3 Early Data (0-RTT) en el módulo stream usando la directiva ssl_early_data.

  • Nuevo estado busy para pares upstream en la API de estadísticas, indicando que un par ha alcanzado el límite configurado por la opción max_conns.

  • El parámetro uri= en la directiva acme_hook permite redefinir la URI de solicitud del hook y soporta variables.

  • El parámetro renew_on_load de la directiva acme_client permite forzar la renovación de certificados al cargar la configuración.

  • El tiempo de compilación ahora se muestra a través del campo build_time del objeto de la API de estadísticas /status/angie y en la salida de la opción de línea de comandos -V.

  • Toda la funcionalidad de nginx 1.27.4, excepto la directiva keepalive_min_timeout (una característica similar ha existido desde la versión 1.8.0).

Cambios#

  • El parámetro enabled=off en la directiva acme_client ahora deshabilita solo la renovación de certificados para el cliente dado mientras preserva toda otra funcionalidad; la clave y el certificado (si están disponibles) pueden ser accedidos a través de las variables $acme_cert_*, mientras que el uso de las variables $acme_hook_* y las directivas acme no causa errores.

  • El error no valid domain name defined for ACME client ahora se emite solo si no se encuentra un nombre de dominio válido (es decir, compatible con ACME) en el bloque server que referencia un cliente ACME usando la directiva acme.

Correcciones de errores#

  • Si se compiló con soporte NTLS, la herencia de las directivas proxy_ssl_certificate y proxy_ssl_certificate_key con variables no funcionaba correctamente.

Paquetes#

Angie PRO 1.8.3#

Fecha de lanzamiento: 02.04.2025.

Correcciones de errores#

  • Las estadísticas del server en el bloque server del módulo HTTP podían ser mal calculadas si las solicitudes dentro de la misma conexión pertenecían a diferentes zonas de estadísticas, o si ocurría un error durante el procesamiento temprano de la solicitud; el error había aparecido en 1.8.2.

Paquetes#

04.04.2025

07.04.2025

Angie PRO 1.8.2#

Fecha de lanzamiento: 13.02.2025.

Seguridad#

  • Validación insuficiente al manejar servidores virtuales con TLSv1.3 SNI permitía que las sesiones SSL fueran reutilizadas en un servidor virtual diferente, evitando la verificación del certificado SSL del cliente (CVE-2025-23419); la corrección fue portada desde nginx 1.27.4.

Correcciones de errores#

  • Las sondas activas configuradas con la directiva upstream_probe (PRO) en el módulo stream podían causar que un proceso worker fallara.

  • Las solicitudes de API para recuperar valores estadísticos de una zona individual, que se establecía a través de variables, podían causar que un proceso worker entrara en un bucle infinito.

  • Las solicitudes HTTP/3 no se contaban en las estadísticas de zona; el error había aparecido en 1.8.0.

  • Los handshakes TLS usando protocolo QUIC no se contaban en las estadísticas SSL.

  • La renovación de certificados a través del protocolo ACME podía fallar para nombres de servidor con prefijo de punto en la directiva server_name.

Paquetes#

2024#

Angie PRO 1.8.1#

Fecha de lanzamiento: 28.12.2024.

Correcciones de errores#

  • El uso de la directiva status_zone en el bloque server del módulo HTTP causaba un registro excesivo de solicitudes vacías en access_log en los handshakes TLS; el error había aparecido en 1.8.0.

  • Los errores de decodificación en el flujo HTTP/3 podían causar un fallo del proceso worker al cerrar una conexión QUIC; la corrección fue portada desde nginx 1.27.4.

  • El envío de paquetes de negociación de versión del protocolo QUIC podía causar un bucle infinito de intercambio de paquetes; la corrección fue portada desde nginx 1.27.4.

  • El uso de DNS-challenge sin hooks en el módulo ACME podía causar un fallo del proceso worker en algunas configuraciones.

Paquetes#

23.01.2025

27.01.2025

Angie PRO 1.8.0#

Fecha de lanzamiento: 19.12.2024.

Características#

  • Vinculación de sesiones HTTP para un grupo de servidores proxy con una solicitud a almacenamiento externo, configurable mediante la directiva sticky en el modo learn usando los parámetros remote_action y remote_result; esto permite configurar la vinculación de sesiones de cliente a servidores balanceados en modo clúster, cuando un grupo de balanceadores está unificado por almacenamiento compartido y dirige las solicitudes de cliente dentro de una sesión al mismo servidor independientemente del balanceador al que lleguen.

  • Soporte de desafíos DNS-01 mediante el manejo de consultas DNS del servidor ACME, lo que permite solicitar automáticamente certificados de cualquier tipo, incluidos los comodín.

  • Sistema de hooks en el módulo ACME, configurable usando la directiva acme_hook, que permite el manejo de desafíos de nombres de dominio usando una aplicación externa para proporcionar integración con varios servicios y proveedores de alojamiento DNS.

  • El módulo ACME registra información adicional: por qué exactamente se está renovando el certificado, lista completa de nombres de dominio, ID de cuenta del cliente, largos períodos de inactividad (p. ej. sondeos), y el nombre de dominio que está siendo desafiado; esta información simplifica la resolución de problemas y permite especificar el registro DNS CAA.

  • El parámetro account_key de la directiva acme_client, que permite reutilizar una clave existente para la cuenta del servidor ACME en lugar de generar automáticamente una nueva.

  • El soporte para variables en las directivas status_zone en los módulos stream y HTTP permite contabilizar dinámicamente estadísticas dentro de varias zonas en un solo bloque location o server; en particular, es especialmente útil cuando un solo bloque server está manejando múltiples hosts virtuales.

  • Compatibilidad del módulo de compresión HTTP GZip con las versiones 2.2.0 y superiores de zlib-ng, que anteriormente podían causar mensajes [alert] gzip filter failed to use preallocated memory en el registro de errores.

  • La directiva max_headers que limita el número de campos de cabecera de solicitud HTTP para proteger mejor contra ataques DoS. Gracias a Maxim Dounin (freenginx) y Maksim Yevmenkin.

  • Las directivas http3_max_table_capacity y proxy_http3_max_table_capacity para configurar los límites de la tabla de compresión de cabeceras dinámicas HTTP/3.

  • Soporte de compilación cruzada - el sistema de construcción ahora puede usar un script envolvente para ejecutar pruebas automáticas, lo que permite preparar una construcción sin ejecutar programas de prueba directamente en la plataforma objetivo.

  • Toda la funcionalidad de nginx 1.27.3.

Correcciones de errores#

  • Los clientes HTTP/3 podrían agotar el tiempo de espera al usar 0-RTT; el error fue heredado de nginx en la versión 1.7.0.

  • El proxy con HTTP/3 usando variables en la directiva proxy_pass y sin especificar un bloque upstream podría causar un crash del proceso worker.

  • Los upstreams HTTP/3 usando tabla dinámica podrían llevar al crash del proceso worker si se usaban con caché.

  • Algunos handshakes SSL podrían no contarse en las estadísticas para el módulo stream.

  • La configuración de proxy HTTP/3 especificada a nivel http o server podría ser ignorada.

  • La directiva proxy_ssl_certificate no funcionaba al hacer proxy vía HTTP/3 con soporte NTLS habilitado.

Cambios#

  • Al cerrar gradualmente procesos worker antiguos, las conexiones keep-alive ahora se cierran solo después de que haya expirado el tiempo de espera especificado por la directiva lingering_timeout; este comportamiento permite evitar posibles errores del cliente al recibir respuestas en ese momento. Gracias a Maxim Dounin (freenginx).

  • Deshabilitado el cacheo de las variables del módulo stream $ssl_server_name, $ssl_server_cert_type, $ssl_preread_protocol, y $ssl_preread_server_name, lo que permite obtener valores actuales al usar servidores virtuales.

Paquetes#

Angie PRO 1.7.0#

Fecha de lanzamiento: 19.09.2024.

Características#

  • Cierre forzado de todas las conexiones a un servidor proxy cuando se elimina del grupo; se puede configurar mediante las directivas proxy_connection_drop, grpc_connection_drop, fastcgi_connection_drop, scgi_connection_drop, y uwsgi_connection_drop, cuyo valor se puede anular localmente con el argumento connection_drop de una petición API para la eliminación del servidor.

  • Contadores de tipos de consulta DNS enviados en la API de estadísticas del resolver, que se recopila con el parámetro status_zone de la directiva resolver.

  • El balanceador de carga feedback (PRO) ahora se puede usar en el módulo stream; distribuye sesiones TCP/UDP basándose en una variable especificada, que se puede obtener de servidores upstream proxy o peticiones periódicas a servicios externos. Esto permite balanceado de carga dinámico dependiendo de métricas arbitrarias de servidores proxy, como consumo de recursos, utilización de CPU/memoria, y longitud de cola.

  • La opción last_byte de la directiva feedback (PRO), que permite procesar la retroalimentación del servidor upstream después de que se reciba toda la respuesta, en lugar de solo la cabecera.

  • El método de balanceado de carga feedback (PRO) ahora acepta números de punto flotante como valor de la variable.

  • El parámetro account de la directiva least_time (PRO), que habilita el uso de una variable para especificar qué peticiones se consideran para el balanceado least_time, incluyendo considerar solo peticiones upstream_probe (PRO).

  • El parámetro factor de la directiva least_time (PRO), que permite especificar un factor de suavizado ajustable para el balanceador least_time y anula el valor del response_time_factor (PRO) usado para la recopilación de estadísticas.

  • Un modo drain que cambia el servidor stream proxy a un nuevo estado draining, cuando solo las peticiones vinculadas usando el módulo sticky se envían al servidor.

  • La variable $ssl_server_cert_type que contiene el tipo de certificado seleccionado para una conexión TLS recibida.

  • Deshabilitación de la creación del archivo PID con el parámetro off de la directiva pid, lo que puede ser beneficioso con imágenes inmutables y control directo por un gestor de servicios. Gracias a Maxim Dounin (freenginx).

  • La creación del archivo PID se hace atómica mediante un archivo temporal intermedio, lo que elimina el momento cuando el archivo ya está en el directorio pero aún vacío, y permite a programas externos manejarlo más fácil y confiablemente.

  • Ahora, durante la reconfiguración, no se intenta recrear el archivo PID si el nombre en la directiva pid ha cambiado pero apunta al mismo archivo mediante enlaces simbólicos; en particular, permite evitar problemas en sistemas que migran de /var/run/angie.pid a /run/angie.pid. Gracias a Maxim Dounin (freenginx).

  • Los errores de registro syslog ahora se reportan no más de una vez por segundo; esto ayuda a evitar inundar los registros con tales mensajes cuando el servidor syslog está caído o sobrecargado. Gracias a Maxim Dounin (freenginx).

  • En el módulo proxy de Mail, el número máximo de comandos durante la autenticación, configurado con la directiva max_commands, está limitado para proteger mejor contra ataques DoS. Gracias a Maxim Dounin (freenginx).

  • La opción --feature-cache opción del script ./configure para almacenar en caché sus resultados para optimización cuando se construyen múltiples módulos o se compila de forma cruzada.

  • Toda la funcionalidad de nginx 1.27.1.

Correcciones de errores#

  • El tiempo de espera de una petición en cola configurado por la directiva queue (PRO) podía provocar el fallo del proceso worker.

  • Los errores PID file ... not readable (yet?) after start y Failed to parse PID from file... podrían aparecer al iniciar con systemd. Gracias a Maxim Dounin (freenginx).

Cambios#

  • Actualizadas las descripciones de códigos de estado HTTP en conformidad con RFC 9110. Gracias a Maxim Dounin (freenginx) y Michiel W. Beijen.

  • Ahora se permite un máximo de una línea vacía antes de una petición HTTP para proteger mejor contra ataques DoS. Gracias a Maxim Dounin (freenginx).

  • Los nombres de campos de cabecera HTTP/1.x sin dos puntos al final ahora están prohibidos; tales campos de cabecera inválidos de un cliente o un servidor proxy ahora causarán una respuesta de error. Gracias a Maxim Dounin (freenginx) y Maksim Yevmenkin.

  • Al leer un cuerpo de petición usando codificación de transferencia fragmentada HTTP/1.1, el tamaño total de extensiones de fragmento ignoradas y campos de cabecera de trailer ahora está limitado por la directiva client_max_body_size para proteger mejor contra ataques DoS. Gracias a Maxim Dounin (freenginx) y Bartek Nowotarski.

  • Deshabilitado el almacenamiento en caché de las variables del módulo stream $ssl_server_name, $ssl_server_cert_type, $ssl_preread_protocol, y $ssl_preread_server_name, lo que permite obtener valores reales al usar servidores virtuales.

Paquetes#

Paquetes#

24.10.2024

Angie PRO 1.6.2#

Fecha de lanzamiento: 16.08.2024.

Seguridad#

  • El procesamiento de un archivo MP4 especialmente diseñado con el ngx_http_mp4_module podría causar un fallo del proceso worker (CVE-2024-7347); la corrección fue portada desde nginx 1.27.1.

Angie PRO 1.6.1#

Fecha de lanzamiento: 08.08.2024.

Características#

Correcciones de errores#

  • Al usar servidores virtuales o las directivas pass en el módulo stream, las conexiones podrían contabilizarse incorrectamente en la API de estadísticas.

  • Los procesos worker podrían fallar en configuraciones con 5 clientes ACME o más; el error había aparecido en 1.6.0.

  • El manejo de respuestas en caché con el encabezado X-Accel-Redirect podría causar un fallo del proceso worker. Gracias a Maxim Dounin (freenginx) y Jiří Setnička.

Paquetes#


Angie PRO 1.6.0#

Fecha de lanzamiento: 28.06.2024.

Características#

  • Balanceo HTTP por el valor de una variable especificada que puede obtenerse de servidores upstream proxy o solicitudes periódicas a servicios externos, usando la directiva feedback en el bloque upstream; esto permite, en particular, balancear dinámicamente la carga dependiendo de métricas arbitrarias de los servidores proxy: consumo de varios recursos, utilización de CPU/memoria, longitud de cola, etc.

  • La directiva sticky y opciones relacionadas en el bloque upstream del módulo stream, que permiten configurar el modo de sesiones persistentes donde todas las conexiones en la sesión se enrutan al mismo servidor.

  • Extracción de valores de Cookie de conexiones RDP usando la directiva rdp_preread en el módulo stream en las variables $rdp_cookie y $rdp_cookie_NAME, lo que permite registrar y adherir sesiones de cliente RDP a servidores particulares durante el balanceo de carga.

  • La opción persistent de la directiva upstream_probe, que permite evitar esperar en sondas essential después de la recarga de configuración para servidores previamente saludables.

  • Soporte para múltiples directivas acme en un bloque server, lo que permite configurar la obtención de dos tipos de certificados a la vez para ese servidor virtual.

  • Opciones de línea de comandos -m y -M para listar módulos integrados y cargados.

  • La variable $upstream_probe que contiene el nombre de la sonda en curso emitida por upstream_probe.

  • Soporte para BoringSSL en el módulo ACME.

  • Toda la funcionalidad de nginx 1.27.0, incluyendo soporte para servidores virtuales en el módulo stream y la directiva pass, que permite pasar conexiones aceptadas para manejo a otros sockets de escucha, incluyendo los módulos HTTP y Mail.

Correcciones de errores#

  • Las sondas upstream_probe activas podrían no haber funcionado en algunas configuraciones mientras registraban mensajes de error como [alert] getsockname() failed (9: Bad file descriptor).

  • La solicitud de certificado vía protocolo ACME podría resultar en error en algunas configuraciones con un mensaje de registro como [alert] getsockname() failed (9: Bad file descriptor).

  • La solicitud de certificado con gran número de nombres de dominio vía protocolo ACME podría resultar en error con un mensaje de registro como [error] JSON parser error.

  • Los clientes ACME en configuraciones con múltiples directivas error_log podrían registrar mensajes en registros irrelevantes.

Paquetes#

Angie PRO 1.5.2#

Fecha de lanzamiento: 03.06.2024.

Seguridad#

  • Al usar HTTP/3, el procesamiento de una sesión QUIC especialmente diseñada podría causar un fallo del proceso worker, divulgación de memoria del proceso worker en sistemas con MTU mayor a 4096 bytes, o tener otro impacto (CVE-2024-32760, CVE-2024-31079, CVE-2024-35200, CVE-2024-34161); la corrección ha sido portada desde nginx 1.26.1.

Paquetes#


Angie PRO 1.5.1#

Fecha de lanzamiento: 16.05.2024.

Correcciones de errores#

  • El mecanismo proxy_next_upstream no funcionaba correctamente al editar un grupo de servidores proxy a través de la API, y al usar la opción resolve de la directiva server en el bloque HTTP si el número de direcciones IP resueltas difería del número de servidores especificados.

  • Al solicitar un certificado a través del protocolo ACME, podría ocurrir un fallo de segmentación en un proceso worker.

  • La directiva sticky en modo learn podría funcionar incorrectamente cuando se especificaban diferentes números de variables lookup y create.

  • El mecanismo slow_start no funcionaba al hacer proxy de conexiones TCP en el módulo stream.

  • Las solicitudes HTTP/3 podrían resultar en un error si se recibían como datos tempranos TLS 1.3; el error había aparecido en 1.4.0.

  • La conexión HTTP/3 podría cerrarse prematuramente al usar 0-RTT en QUIC.

  • Al leer un cuerpo de solicitud desde una conexión rápida, era posible leer durante mucho tiempo. Gracias a Maxim Dounin (freenginx).

Cambios#

  • Ahora los clientes ACME no descartan certificados previamente almacenados que habían expirado o fueron emitidos para una lista de dominios diferente, sino que los usan durante la renovación.

Paquetes#

27.05.2024

  • Añadidos paquetes para Alpine 3.20.

Angie PRO 1.5.0#

Fecha de lanzamiento: 27.03.2024.

Características#

  • Soporte básico para obtener y actualizar automáticamente certificados usando el protocolo ACME, configurable con las directivas acme_client y acme, así como variables de la forma $acme_cert_= y $acme_cert_key_=.

  • Un modo drain que cambia el servidor HTTP proxy a un nuevo estado draining, cuando solo las solicitudes vinculadas usando el módulo sticky se envían al servidor.

  • Configuración de redirección automática, que agrega barras diagonales finales a los URIs de solicitud, con la directiva auto_redirect.

  • Salida de métricas de estadísticas con fechas en formato Epoch en lugar de ISO 8601 para uso en Prometheus y opcionalmente en la API JSON con el argumento de solicitud ?date-epoch.

  • Ahora el modificador -V también muestra la versión relevante de nginx, lo que es útil para compatibilidad con utilidades de terceros, certbot en particular. Gracias a AdvTechnoKing.

  • Toda la funcionalidad de nginx 1.25.4.

Correcciones de errores#

  • Si se usaba el mecanismo de reutilización de sesión SSL proxy_ssl_session_reuse y la lista de servidores proxy se actualizaba dinámicamente, podría ocurrir una fuga en la zona de memoria compartida configurada para el bloque upstream correspondiente.

Paquetes#

28.03.2024

16.04.2024

25.04.2024

Angie PRO 1.4.1#

Fecha de lanzamiento: 15.02.2024.

Seguridad#

  • Al usar HTTP/3, podría haber ocurrido un error de segmentación en un proceso worker mientras se procesaba una sesión QUIC especialmente diseñada (CVE-2024-24989); tenga en cuenta que Angie PRO a partir de la versión 1.4.0 ya no es vulnerable a CVE-2024-24990.

Paquetes#

2023#

Angie PRO 1.4.0#

Fecha de lanzamiento: 21.12.2023.

Características#

  • Soporte para establecer conexiones HTTP/3 a servidores upstream en el módulo proxy HTTP permitiendo a los clientes usar versiones HTTP arbitrarias. La configuración se realiza con la directiva proxy_http_version y un conjunto de directivas proxy_quic_ y proxy_http3_.

  • La directiva upstream_probe (PRO) para verificar la salud de los servidores en el bloque upstream del módulo stream mediante la creación periódica de conexiones de prueba o el envío de datagramas.

  • Modo learn adicional de la directiva sticky para vincular sesiones a servidores proxy que permite descubrir sesiones y guardarlas en la memoria compartida del servidor.

  • Cola de espera para solicitudes que no pudieron ser balanceadas en el primer intento, configurada usando la directiva queue (PRO) en el bloque upstream del módulo HTTP.

  • Interfaz JSON RESTful HTTP para reconfigurar, agregar o eliminar servidores en los bloques upstream del módulo stream, y la directiva state para persistir estos cambios.

  • Balanceo de carga por tiempo promedio para establecer una conexión, recibir el primer o último byte de una respuesta de servidores stream upstream proxy con un factor de suavizado ajustable, usando las directivas least_time (PRO) y response_time_factor (PRO) en el bloque upstream.

  • Estadísticas del tiempo promedio para establecer una conexión, recibir el primer y último byte de una respuesta de servidores stream upstream proxy en la interfaz proporcionada por la directiva api, con la capacidad de ajustar el factor de suavizado promedio a través de la directiva response_time_factor (PRO) del bloque upstream.

  • Un mecanismo para poner en línea suavemente el servidor proxy después de una falla usando la opción slow_start de la directiva server en el bloque upstream.

  • Directiva mqtt_preread en el módulo stream, que permite extraer el nombre de usuario y el id del cliente del paquete CONNECT del protocolo MQTT en las variables $mqtt_preread_username y $mqtt_preread_clientid.

  • Limitación de la velocidad de respuesta de la transmisión de archivos MP4 al cliente proporcionalmente al bitrate usando las directivas mp4_limit_rate y mp4_limit_rate_after, lo que reduce la carga de ancho de banda.

  • Toda la funcionalidad de nginx 1.25.3.

Correcciones de errores#

  • Si un servidor proxy era el único en un grupo, podría ser incorrectamente reportado como unavailable en la API de estadísticas incluso después de la recuperación.

Cambios#

  • Ahora el tiempo del servidor proxy estando en estado checking no se cuenta como downtime.

  • La plantilla estándar prometheus_all.conf incluye todas las métricas adicionales de Prometheus y los posibles valores state de los peers upstream que solo son expuestos por la versión PRO.

Paquetes#

25.12.2023

22.01.2024

  • Módulos dinámicos agregados:

  • Ahora el interruptor -V también muestra la versión relevante de nginx, lo que es útil para compatibilidad con utilidades de terceros, certbot en particular. Gracias a AdvTechnoKing.

  • Toda la funcionalidad de nginx 1.25.4.

Correcciones de errores#

  • Si se usaba el mecanismo de reutilización de sesión SSL proxy_ssl_session_reuse y la lista de servidores proxy se actualizaba dinámicamente, podría ocurrir una fuga en la zona de memoria compartida configurada para el bloque upstream correspondiente.

Paquetes#

28.03.2024

16.04.2024

25.04.2024

Angie PRO 1.4.1#

Fecha de lanzamiento: 15.02.2024.

Seguridad#

  • Al usar HTTP/3, podría haber ocurrido un error de segmentación en un proceso worker mientras se procesaba una sesión QUIC especialmente diseñada (CVE-2024-24989); tenga en cuenta que Angie PRO a partir de la versión 1.4.0 ya no es vulnerable a CVE-2024-24990.

Paquetes#

2023#

Angie PRO 1.4.0#

Fecha de lanzamiento: 21.12.2023.

Características#

  • Soporte para establecer conexiones HTTP/3 a servidores upstream en el módulo proxy HTTP permitiendo a los clientes usar versiones HTTP arbitrarias. La configuración se realiza con la directiva proxy_http_version y un conjunto de directivas proxy_quic_ y proxy_http3_.

  • La directiva upstream_probe (PRO) para verificar la salud de los servidores en el bloque upstream del módulo stream mediante la creación periódica de conexiones de prueba o el envío de datagramas.

  • Modo learn adicional de la directiva sticky para vincular sesiones a servidores proxy que permite descubrir sesiones y guardarlas en la memoria compartida del servidor.

  • Cola de espera para solicitudes que no pudieron ser balanceadas en el primer intento, configurada usando la directiva queue (PRO) en el bloque upstream del módulo HTTP.

  • Interfaz JSON RESTful HTTP para reconfigurar, añadir o eliminar servidores en los bloques upstream del módulo stream, y la directiva state para persistir estos cambios.

  • Balanceo de carga por tiempo promedio para establecer una conexión, recibir el primer o último byte de una respuesta de servidores stream upstream proxy con un factor de suavizado ajustable, usando las directivas least_time (PRO) y response_time_factor (PRO) en el bloque upstream.

  • Estadísticas del tiempo promedio para establecer una conexión, recibir el primer y último byte de una respuesta de servidores stream upstream proxy en la interfaz proporcionada por la directiva api, con la capacidad de ajustar el factor de suavizado promedio a través de la directiva response_time_factor (PRO) del bloque upstream.

  • Un mecanismo para poner en línea suavemente el servidor proxy después de una falla usando la opción slow_start de la directiva server en el bloque upstream.

Angie PRO 1.3.2#

Fecha de lanzamiento: 23.11.2023.

Correcciones de errores#

  • Las sondas de salud activas con la bandera essential manejaban incorrectamente la transición del servidor de checking a unhealthy cuando la verificación inicial fallaba, resultando en que las peticiones de usuario se enrutaran al servidor defectuoso.

  • Posibles valores incorrectos de métricas en la salida de Prometheus que usaban variables distintas a $p8s_value para sus valores; en la práctica el problema podía ocurrir con angie_http_upstreams_peers_state y angie_stream_upstreams_peers_state de la plantilla estándar prometheus_all.conf.

  • Algunos intentos de conexión a servidores upstream podrían no haber sido contabilizados correctamente en la API de estadísticas si fallaban inmediatamente; el error había aparecido en 1.3.0.

Paquetes#

04.12.2023

07.12.2023

12.12.2023

Angie PRO 1.3.1#

Fecha de lanzamiento: 18.10.2023.

Seguridad#

  • Añadidas limitaciones adicionales al manejo de flujos HTTP/2 para mejor protección contra el ataque DoS conocido como "HTTP/2 Rapid Reset" (CVE-2023-44487).

Paquetes#

26.10.2023

13.11.2023

Angie PRO 1.3.0#

Fecha de lanzamiento: 03.10.2023.

Características#

  • Capacidad de especificar múltiples patrones de coincidencia en la directiva location, lo que permite combinar varios bloques location con configuraciones similares y por tanto simplificar la configuración reduciendo la duplicación.

  • Balanceado de carga por tiempo promedio para recibir la cabecera de respuesta o respuesta completa de servidores HTTP proxy con un factor de suavizado ajustable, usando las directivas least_time (PRO) y response_time_factor (PRO) en el bloque upstream.

  • Exportación de métricas de estadísticas variadas en formato Prometheus con configuración de plantilla flexible usando las nuevas directivas prometheus y prometheus_template.

  • Estadísticas de tiempo promedio para recibir la cabecera de respuesta y respuesta completa de servidores HTTP proxy en la interfaz proporcionada por la directiva api, con la capacidad de ajustar el factor de suavizado promedio a través de la directiva response_time_factor (PRO) del bloque upstream.

  • Información detallada y métricas para grupos de servidores upstream de stream en la interfaz de estadísticas proporcionada por la directiva api.

  • La opción resolve de la directiva server en el bloque upstream del módulo stream que permite monitorear cambios en la lista de direcciones IP correspondientes a un nombre de dominio, y actualizarla automáticamente sin necesidad de recargar la configuración.

  • La opción service de la directiva server en el bloque upstream del módulo stream que permite recuperar listas de direcciones de registros DNS SRV, con soporte básico de prioridad.

  • Soporte para vincular una conexión de cliente a una conexión de servidor backend usando la directiva bind_conn (PRO) en los bloques upstream del módulo http, particularmente para hacer proxy de conexiones con autenticación NT LAN Manager (NTLM).

  • Acceso al contenido de archivos de configuración usados por la generación actual de procesos worker a través de la interfaz proporcionada por la directiva api con la directiva api_config_files habilitada.

  • Visualización del número de generación de configuración en títulos de proceso, lo que permite monitorear el éxito de recargas de configuración y el número de generaciones de procesos worker anteriores usando la utilidad ps.

  • Toda la funcionalidad de nginx 1.25.2.

Cambios#

  • Ahora se usa el nombre de aplicación angie al cargar la configuración de OpenSSL.

Paquetes#

Angie PRO 1.2.0#

Fecha de lanzamiento: 15.08.2023.

Características#

  • Interfaz JSON RESTful HTTP para reconfigurar, añadir o eliminar servidores en los bloques upstream del módulo HTTP, y la directiva state para persistir estos cambios.

  • La directiva upstream_probe (PRO) para verificar el estado de los servidores en el bloque upstream del módulo HTTP enviando periódicamente solicitudes de sondeo.

  • Soporte para fragmentación de caché en el módulo proxy HTTP, que permite almacenar en caché las respuestas en diferentes directorios (unidades) dependiendo de un parámetro de respuesta arbitrario, configurado con variables en la nueva opción path- de la directiva proxy_cache.

  • Soporte para NTLS en los módulos HTTP al usar la biblioteca TLS TongSuo; el soporte puede habilitarse a través de la opción de tiempo de compilación ‑‑with‑ntls y configurarse con las directivas correspondientes ssl_ntls y proxy_ssl_ntls.

  • En los módulos proxy HTTP, la capacidad de especificar múltiples certificados con diferentes tipos (RSA y ECDSA) y claves correspondientes usando las directivas proxy_ssl_certificate y proxy_ssl_certificate_key.

  • Visualización de la versión y el nombre de compilación en el título del proceso master, lo que permite obtener esta información sobre una instancia de servidor en ejecución usando la utilidad ps.

  • Capacidad del módulo gzip para comprimir respuestas "207 Multi-Status". Gracias a DBotThePony.

  • Toda la funcionalidad de nginx 1.25.0, incluyendo soporte para HTTP/3.

Cambios#

Paquetes#

Angie PRO 1.1.0-p1#

Fecha de lanzamiento: 01.03.2023.

Características#

  • La directiva sticky y opciones relacionadas en el bloque upstream del módulo HTTP que permiten configurar el modo de sesiones persistentes, donde todas las solicitudes de la sesión se enrutan al mismo servidor.

  • La variable $upstream_sticky_status que puede ser new, hit o miss dependiendo del éxito al solicitar el servidor upstream relacionado con sesiones persistentes habilitadas.

Angie PRO 1.1.0#

Fecha de lanzamiento: 07.02.2023.

Características#

  • La directiva api que proporciona una interfaz HTTP RESTful para acceder en formatos JSON o Prometheus a información básica sobre una instancia de servidor web, así como métricas de conexiones de cliente, zonas de memoria compartida, consultas DNS, solicitudes HTTP, caché de respuestas HTTP, sesiones TCP/UDP del módulo stream, zonas de los módulos limit_conn/limit_req, y grupos de servidores upstream HTTP.

  • La opción resolve de la directiva server en el bloque upstream del módulo HTTP que permite monitorear cambios en la lista de direcciones IP correspondientes a un nombre de dominio, y actualizarla automáticamente sin necesidad de recargar la configuración.

  • La opción service de la directiva server en el bloque upstream del módulo HTTP que permite obtener listas de direcciones de registros DNS SRV, con soporte básico de prioridad.

  • La directiva status_zone en el módulo HTTP para especificar la zona para recopilar métricas de solicitudes en contextos server y location.

  • La directiva status_zone en el módulo stream para especificar la zona para recopilar métricas de sesiones TCP/UDP.

  • El parámetro status_zone de la directiva resolver para especificar la zona para recopilar métricas sobre consultas DNS.

  • autoindex utiliza orden de clasificación natural para listados de directorios.

  • Configuración arbitraria de la firma en páginas de error predeterminadas y el campo de cabecera de respuesta Server a través de la directiva server_tokens.

  • La variable $angie_version con la versión de Angie.

  • Toda la funcionalidad de nginx 1.23.3.

Paquetes#

07.04.2023

  • Añadidos paquetes para ALT Linux.

12.05.2023

26.05.2023

  • Añadidos paquetes para Astra Linux Special Edition.

13.06.2023

12.07.2023

31.07.2023