Actualización de seguridad: Publicados los paquetes RPM y DEB de NGINX 1.31.7 Mainline con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.3 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.7 Mainline con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.3 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, ambos opcionales como el resto de los módulos nginx-module-*. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Mainline más reciente: docker pull codeitus/nginx:mainline
  • esta versión exacta: docker pull codeitus/nginx:1.31.7

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Feature: los módulos ngx_http_geoip_module y ngx_stream_geoip_module ahora admiten bases de datos en el formato MaxMind DB (MMDB).
  • Feature: ahora se pueden verificar los certificados SSL del back end por dirección IP.
  • Feature: ahora QUIC admite la reconfiguración y la actualización binaria al usar la directiva “quic_bpf”.
  • Change: el módulo ngx_http_v2_module ahora usa el esquema de priorización de RFC 9218 y se ignoran las señales de prioridad de RFC 7540.
  • Bugfix: podría producirse una falta de segmentación en un proceso de trabajo o podrían aparecer alertas en los registros con el mensaje “request count is zero” si la línea del encabezado “X-Accel-Redirect” se había almacenado en caché y, después, se servía la respuesta almacenada en caché a un cliente.
  • Bugfix: podría producirse una falta de segmentación en un proceso de trabajo si se usaba el ngx_http_dav_module para gestionar los métodos COPY y MOVE en una ubicación con la directiva “alias”.
  • Bugfix: las conexiones QUIC podrían cerrarse con el mensaje “quic flood detected” en los registros si la directiva “http3_stream_buffer_size” se establecía en un valor pequeño; el problema había aparecido en 1.27.5.
  • Bugfix: cerrar una conexión SSL sin close_notify se trataba como una finalización correcta, incluso cuando la conexión se reiniciaba; ahora aparecen errores “SSL_read() failed” en los registros en este caso.
  • Bugfix: podrían aparecer mensajes “[crit] SSL_write() failed” en los registros cuando se producía un error al leer desde una conexión SSL.

Vulnerabilidades corregidas:

  • Security: podría producirse un desbordamiento de búfer en un proceso de trabajo al usar la directiva “alias” si la URI de la solicitud se cambiaba mediante la directiva “rewrite” y, después, se asignaba a una ruta de archivo (CVE-2026-15176).
  • Security: podría producirse un desbordamiento de búfer en un proceso de trabajo al evaluar expresiones de cadena con variables, lo que afectó al cálculo del directorio raíz y al registro de solicitudes en los módulos http y stream (CVE-2026-93479).
  • Security: al usar HTTP/3, una parte de un marco desconocido podría tratarse como el cuerpo de la solicitud, lo que podría provocar eludir el límite “client_max_body_size” o inyectar datos en la solicitud a través del proxy (CVE-2026-95101).
  • Security: al usar la rotación de claves de los tickets de sesión TLS, una de las claves se dejó sin inicializar, lo que podría permitir forjar una sesión (CVE-2026-97629).
  • Security: al usar E/S de archivos asíncrona (AIO), podría producirse un use-after-free en ciertas configuraciones si la página SSI tiene comandos “include virtual” (CVE-2026-97205).

Actualización de seguridad: Publicados los paquetes RPM y DEB de NGINX 1.30.6 Stable con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.3 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.30.6 Stable con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.3 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, ambos opcionales como el resto de los módulos nginx-module-*. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Stable más reciente: docker pull codeitus/nginx:stable
  • esta versión exacta: docker pull codeitus/nginx:1.30.6

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Change: se ha reducido el nivel de registro de los errores SSL “invalid alert” y “record layer failure”, y el de “SSL alert number N” para cualquier número de alerta, de “crit” a “info”.
  • Bugfix: podría ocurrir un fallo de segmentación en un proceso de trabajo o podrían aparecer en los registros alertas “request count is zero” si la línea de cabecera “X-Accel-Redirect” se había almacenado en caché y, después, se había entregado la respuesta almacenada en caché a un cliente.
  • Bugfix: podría ocurrir un fallo de segmentación en un proceso de trabajo si se usó el módulo ngx_http_dav_module para gestionar los métodos COPY y MOVE en una ubicación con la directiva “alias”.
  • Bugfix: podría ocurrir un fallo de segmentación al leer la configuración si se usó la directiva “geo” con el parámetro “ranges” y el archivo binario de base correspondiente estaba dañado.
  • Bugfix: podría ocurrir un error use-after-free en un proceso de trabajo si se usó proxying con almacenamiento en búfer y se produjo un error al enviar la respuesta a un cliente HTTP/2.
  • Bugfix: el proceso de trabajo podría no terminar o podrían aparecer en los registros alertas “accept4() failed (9: Bad file descriptor)” si el proceso de trabajo se quedó sin descriptores de archivo antes del cierre correcto (graceful shutdown).
  • Bugfix: podría ocurrir un fallo de segmentación en un proceso de trabajo si se usó el método “select”.
  • Bugfix: compatibilidad binaria con módulos de terceros que usan códigos de script; el fallo había aparecido en 1.30.4.
  • Bugfix: en el módulo ngx_http_perl_module.
  • Bugfix: en el control de flujo del módulo ngx_http_v2_module.
  • Bugfix: los mensajes “[error] upstream sent frame for unknown stream” y “[crit] cache file … contains invalid header” podrían aparecer en los registros al enviar una respuesta HTTP/2 almacenada en caché en el módulo ngx_http_proxy_v2_module si se usó la directiva “proxy_cache_revalidate”.
  • Bugfix: la fragmentación de IPv6 podría no desactivarse al usar QUIC en algunos sistemas operativos.
  • Bugfix: en el módulo ngx_http_auth_basic_module en Solaris.
  • Bugfixes en HTTP/3, ngx_http_image_filter_module, ngx_http_slice_module y ngx_http_memcached_module.

Vulnerabilidades corregidas:

  • Security: podría ocurrir un desbordamiento de búfer en un proceso de trabajo al usar la directiva “alias” si el URI de la solicitud se modificó con la directiva “rewrite” y, después, se mapeó a una ruta de archivo (CVE-2026-15176).
  • Security: podría ocurrir un desbordamiento de búfer en un proceso de trabajo al evaluar expresiones de cadena con variables, lo que afectó al cálculo del document root y al registro de solicitudes en los módulos http y stream (CVE-2026-93479).
  • Security: al usar HTTP/3, parte de un marco desconocido podría tratarse como el cuerpo de la solicitud, lo que podría dar lugar a omitir el límite de “client_max_body_size” o a inyectar datos en la solicitud proxy (CVE-2026-95101).
  • Security: al usar la rotación de claves de tickets de sesión TLS, una de las claves se dejó sin inicializar, lo que podría permitir forjar una sesión (CVE-2026-97629).
  • Security: al usar E/S asíncrona de archivos (AIO), podría ocurrir un error use-after-free en algunas configuraciones si la página SSI tiene comandos “include virtual” (CVE-2026-97205).

Actualización de seguridad: Publicados los paquetes RPM y DEB de Apache httpd 2.4.69 con HTTP/2, HTTP/3, Brotli, TLS 1.3, OpenSSL 4.0.3 y ALPN para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

Apache httpd 2.4.69 ha sido añadido al repositorio de CodeIT, compilado con HTTP/2 (mod_http2), Brotli, TLS 1.3 y ALPN, usando OpenSSL 4.0.3. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

A partir de 2.4.69, mod_ssl se compila con la API de OpenSSL 3.0 en lugar de la 1.1.1 (OPENSSL_API_COMPAT sube de 1.1.1 a 3.0.0), porque OpenSSL 4.0 elimina funciones que quedaron obsoletas antes de la 3.0. Con ello desaparece SRP (TLS-SRP, RFC 5054): las directivas SSLSRPVerifierFile y SSLSRPUnknownUserSeed ya no existen, así que elimínelas de la configuración antes de actualizar o httpd no arrancará, y las variables SSL_SRP_USER y SSL_SRP_USERINFO ya no se definen. La API ENGINE ya estaba desactivada en estos paquetes.

En los paquetes RPM, mod_http2 se compila ahora desde el código fuente de httpd, como ya se hace en los paquetes DEB y en el apache2 de Ubuntu, en lugar de desde el proyecto independiente mod_h2. El paquete conserva el nombre mod_http2 y ahora lleva la versión de httpd, así que dnf o yum actualizan desde mod_http2 2.0.42 por sí solos: no hay que desinstalar nada antes y se conserva un 10-h2.conf modificado.

HTTP/3 está disponible para este httpd mediante mod_http3, un módulo experimental empaquetado por separado:

  • RPM, EL8 y posteriores: dnf install mod_http3
  • RPM, EL7: yum install mod_http3
  • DEB: apt install libapache2-mod-http3

El módulo se carga en cuanto se instala; HTTP/3 se activa por host virtual. Edite el vhost de ejemplo que instala el paquete (ServerName y certificado): en EL es /etc/httpd/vhosts.d/http3-vhost.conf, que httpd.conf no incluye por defecto, así que añada IncludeOptional vhosts.d/*.conf; en Ubuntu ejecute a2ensite http3-vhost. Después recargue httpd y abra 443/udp en el cortafuegos, ya que QUIC funciona sobre UDP.

Cambios principales:

  • Se corrigió el icono de tar en la documentación para que el fondo sea transparente. PR 70238.
  • mod_ssl: Se corrigieron las macros de compatibilidad de OpenSSL para X509_get0_notBefore, X509_get0_notAfter y X509_get0_serialNumber con OpenSSL < 1.1. PR 70205.
  • mod_cgid, mod_ssl, mod_md: Se realizaron varios ajustes de hardening.
  • mod_md: MDServerStatus ahora se deshabilita de forma predeterminada.
  • mod_auth_digest: Se corrigió la compatibilidad con AuthName basado en expresiones. PR 59039.
  • mod_auth_digest.c: Se eliminó el soporte de RFC 2069; se reescribió el manejo de memoria compartida y la gestión del nonce del cliente; el mutex «authdigest-opaque» ya no es necesario.
  • mod_lbmethod_heartbeat: Se utiliza un parseo seguro de enteros con validación de rango, sustituyendo atoi().
  • core: Se rechazan caracteres de control en la frase de motivo de las respuestas intermedias. Solo se acepta el espacio como separador del código de estado.
  • mod_substitute: Se corrigió SubstituteMaxLineLength para rechazar valores demasiado grandes para el sufijo K/M/G.
  • mod_substitute: Se corrigió el fallo o el comportamiento incorrecto al cargar una directiva Substitute con un delimitador final faltante.
  • mod_dir: Se corrigió un fallo en fixup_dir para una solicitud que no está asignada a ningún tipo. PR68527.
  • mod_http2: No se descarta una respuesta en curso cuando el cliente envía un GOAWAY correcto (error code 0) mientras los streams que abrió aún se están procesando. La sesión ahora drena los streams abiertos en lugar de desmontarlos de inmediato, algo que los async MPM sufren mucho más que event. Se corrigió una respuesta descartada en silencio; cumple RFC 9113.
  • mod_md: Se añadió compatibilidad con OpenSSL 4.
  • pytest_suite: Se portó el antiguo framework de pruebas PERL a Python y pytest. Ahora se incluye en el árbol de código fuente bajo ./test

Vulnerabilidades corregidas:

  • SECURITY: CVE-2026-93546: mod_dav_fs overflow del espacio de nombres Integer overflow en mod_dav_fs en Apache HTTP Server hasta 2.4.68 permite a un cliente WebDAV autenticado con permiso de escritura provocar el bloqueo de procesos worker y corromper persistentemente la base de datos de propiedades de un directorio mediante solicitudes PROPPATCH que declaran muchos XML namespaces.
  • SECURITY: CVE-2026-79768: mod_userdir divulgación de información Equivalencia de rutas: vulnerabilidad de ‘/./’ (directorio con un solo punto) en el módulo mod_userdir de Apache HTTP Server cuando se configura con la directiva de UserDir absoluta sin comodines (la segunda forma en). Este problema afecta a Apache HTTP Server: desde la 2.4.0 hasta la 2.4.68.
  • SECURITY: CVE-2026-73637: mod_auth_digest ataque de DoS Use after free en mod_auth_digest en Apache Software Foundation Apache HTTP Server anteriores a 2.4.69 en todas las plataformas permite a un cliente remoto no autenticado provocar la corrupción del estado de autenticación mediante solicitudes simultáneas de autenticación Digest cuando AuthDigestNcCheck está habilitado o cuando AuthDigestNonceLifetime se establece en 0. Se recomienda actualizar a la versión 2.4.69, que corrige este problema.
  • SECURITY: CVE-2026-73636: mod_auth_digest ataque de replay de nonce de un solo uso omisión de autenticación mediante capture-replay en mod_auth_digest en Apache Software Foundation Apache HTTP Server 2.4.x en todas las plataformas permite a un atacante man-in-the-middle (MITM) reproducir credenciales de autenticación Digest capturadas mediante solicitudes manipuladas que activan la recolección de basura de la entrada de memoria compartida del cliente cuando AuthDigestNonceLifetime se establece en 0. Se recomienda actualizar a la versión 2.4.69, que corrige este problema.
  • SECURITY: CVE-2026-63718: mod_proxy_uwsgi secuestro de respuesta Transfer-Encoding Interpretación inconsistente de solicitudes HTTP (“HTTP Request/Response Smuggling”) secuestro de respuesta vulnerabilidad en Apache HTTP Server a través de mod_proxy_uwsgi y una respuesta uwsgi manipulada con Transfer-Encoding. Este problema afecta a Apache HTTP Server: desde la 2.4.30 hasta la 2.4.68.
  • SECURITY: CVE-2026-63686: mod_xml2enc fallo en la conversión de charset NULL pointer dereference en mod_xml2enc en Apache Software Foundation Apache HTTP Server anteriores a 2.4.69 en todas las plataformas permite que un servidor backend no confiable provoque una denegación de servicio mediante una respuesta proxy con un charset cuya conversión se completa parcialmente y luego falla. Se recomienda actualizar a la versión 2.4.69, que corrige este problema.
  • SECURITY: CVE-2026-63292: mod_vhost_alias desbordamiento de pila desbordamiento de búfer basado en pila en mod_vhost_alias en Apache Software Foundation Apache HTTP Server hasta la 2.4.68 en todas las plataformas permite a un cliente remoto provocar una denegación de servicio o, potencialmente, ejecutar código arbitrario mediante una solicitud HTTP con un encabezado Host que supera los 8192 bytes cuando VirtualDocumentRoot usa un especificador de formato de nombre de host y LimitRequestFieldSize se incrementa por encima del valor predeterminado. Se recomienda actualizar a la versión 2.4.69, que corrige este problema.
  • SECURITY: CVE-2026-63045: mod_proxy_ftp manejo de la dirección PASV validación incorrecta de la dirección de respuesta FTP PASV en mod_proxy_ftp en Apache Software Foundation Apache HTTP Server hasta 2.4.68 en todas las plataformas permite, en configuraciones de forward proxy, que un servidor FTP no confiable haga que el proxy abra una conexión de datos hacia un host de tercero arbitrario mediante una respuesta PASV manipulada. Se recomienda actualizar a la versión 2.4.69, que corrige este problema.
  • SECURITY: CVE-2026-59797: mod_ssl SSLRequire permite archivos ap_expr de .htaccess función gestión inadecuada de privilegios en mod_ssl de Apache HTTP Server a través de SSLRequire y expresiones relacionadas con archivos. Este problema afecta a Apache HTTP Server: desde la 2.4.0 hasta la 2.4.68.
  • SECURITY: CVE-2026-59685: Escritura fuera de límites en ap_directory_walk() Canonical-Name Rewrite en CASE_BLIND_FILESYSTEM vulnerabilidad de escritura fuera de límites en Apache HTTP Server en Windows al procesar rutas con nombres 8.3 que pueden aumentar cuando se expanden. Este problema afecta a Apache HTTP Server: desde la 2.4.0 hasta la 2.4.68.
  • SECURITY: CVE-2026-58415: mod_dav_fs acceso de lectura a la base de datos de propiedades archivos de estado internos accesibles para partes externas en mod_dav_fs en Apache Software Foundation Apache HTTP Server anteriores a 2.4.69 en todas las plataformas permite que un cliente remoto lea las dead properties WebDAV de recursos que no puede autorizar mediante una solicitud GET para el directorio .DAV state directory. Este problema afecta a Apache HTTP Server: desde la 2.4.0 hasta la 2.4.68.
  • SECURITY: CVE-2026-57941: mod_http2 use-after-free / escritura salvaje mediante reentrancia compartida session->bbtmp Use After Free vulnerabilidad en mod_http2 de Apache HTTP Server mediante reentrancia compartida session->bbtmp. Este problema afecta a Apache HTTP Server: desde la 2.4.0 hasta la 2.4.68.
  • SECURITY: CVE-2026-56449: mod_proxy_html: fallo en dump_content vulnerabilidad de escritura fuera de límites en mod_proxy_html de Apache HTTP Server con cuerpos de respuesta HTTP manipulados. Este problema afecta a Apache HTTP Server: desde la 2.4.0 hasta la 2.4.68.
  • SECURITY: CVE-2026-56154: mod_rewrite use-after-free mediante %{LA-U:HTTP…} Use After Free vulnerabilidad en Apache HTTP Server mod_rewrite al usar lookahead (%{LA-U:HTTP…}) Este problema afecta a Apache HTTP Server: desde la 2.4.0 hasta la 2.4.68.
  • SECURITY: CVE-2026-56153: mod_charset_lite: desbordamiento de heap en finish_partial_char vulnerabilidad de escritura fuera de límites en Apache HTTP Server mod_charset_lite. Este problema afecta a Apache HTTP Server: desde la 2.4.0 hasta la 2.4.68.
  • SECURITY: CVE-2026-48005: mod_auth_digest ataque de reautenticación fallan las comprobaciones de autenticación en mod_auth_digest en Apache Software Foundation Apache HTTP Server anteriores a 2.4.69 en todas las plataformas permite a un cliente remoto no autenticado provocar una denegación de servicio (reautenticación forzada) mediante encabezados Authorization falsificados cuando la autenticación Digest está habilitada con AuthDigestNcCheck. Se recomienda actualizar a la versión 2.4.69, que corrige este problema.
  • SECURITY: CVE-2026-47360: mod_session: la cookie de sesión no se elimina durante el redireccionamiento interno Exposición de información confidencial a un actor no autorizado vulnerabilidad en el módulo mod_session_cookie de Apache HTTP Server.
  • SECURITY: CVE-2026-46729: mod_heartmonitor denegación de servicio NULL Pointer Dereference vulnerabilidad en Apache HTTP Servers mod_heartmonitor a través del listener unicast. Este problema afecta a Apache HTTP Server: desde la 2.4.0 hasta la 2.4.68.
  • SECURITY: CVE-2026-42528: desbordamiento del shared lock de mod_dav un error de cálculo de memoria en mod_dav en Apache httpd 2.4.67 y anteriores permite a un atacante con permiso para crear WebDAV locks provocar el bloqueo de procesos secundarios del servidor. Se recomienda actualizar a la versión 2.4.69, que corrige este problema
  • SECURITY: CVE-2026-42356: RCE limitado para algunos redireccionamientos internos a archivos que no son CGI en directorios CGI vulnerabilidad de despliegue de un controlador incorrecto en Apache HTTP Server permite que el objetivo de algunos redireccionamientos internos desde programas CGI también se trate como CGI y se ejecute. El objetivo ya debe estar en un directorio habilitado para CGI y no debe tener ninguna otra extensión comprendida por mod_mime. Este problema afecta a Apache HTTP Server: desde la 2.4.60 hasta la 2.4.68.

Actualización de seguridad: Publicados los paquetes RPM y DEB de NGINX 1.31.6 Mainline con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.2 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.6 Mainline con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.2 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, que el paquete rpm de nginx instala automáticamente (la dependencia se mantiene para que las instalaciones existentes se actualicen sin perder esas directivas; se eliminará en unos meses y ambos módulos pasarán a ser realmente opcionales). Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Mainline más reciente: docker pull codeitus/nginx:mainline
  • esta versión exacta: docker pull codeitus/nginx:1.31.6

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Cambio: la extensión de parámetros de transporte QUIC recibida en una conexión SSL ahora se ignora siempre.
  • Corrección: la actualización binaria no podía funcionar si se especificaba el socket del control API y el nuevo ejecutable de nginx se construía con el módulo ngx_http_perl_module.
  • Corrección: se ignoraba un error al evaluar un predicado en una ubicación de predicado y el predicado se trataba como false.
  • Corrección: un error durante la búsqueda de una ubicación anidada podía ignorarse si las ubicaciones indicadas por expresiones regulares o predicados se configuraban en el nivel actual.
  • Corrección: podía producirse una falta de segmentación al leer la configuración si se usaba la directiva “geo” con el parámetro “ranges” y el archivo binario base correspondiente estaba dañado.

Vulnerabilidades corregidas:

  • Seguridad: en un proceso worker se podía producir un desbordamiento de búfer de memoria heap con algunas configuraciones al usar HTTP/3 con OpenSSL 3.5.0 o anterior (CVE-2026-90439).

Actualización de seguridad: Publicados los paquetes RPM y DEB de NGINX 1.30.5 Stable con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.2 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.30.5 Stable con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.2 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, que el paquete rpm de nginx instala automáticamente (la dependencia se mantiene para que las instalaciones existentes se actualicen sin perder esas directivas; se eliminará en unos meses y ambos módulos pasarán a ser realmente opcionales). Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Esta actualización corrige vulnerabilidades de seguridad. Se recomienda actualizar.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Stable más reciente: docker pull codeitus/nginx:stable
  • esta versión exacta: docker pull codeitus/nginx:1.30.5

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Change: ahora se ignora siempre la extensión de parámetros de transporte QUIC recibida en una conexión SSL.

Vulnerabilidades corregidas:

  • Security: podría producirse un desbordamiento de búfer de memoria en el montón en un proceso de trabajo con ciertas configuraciones al usar HTTP/3 con OpenSSL 3.5.0 y anteriores (CVE-2026-90439).

Publicados los paquetes RPM y DEB de NGINX 1.31.5 Mainline con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.2 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.5 Mainline con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.2 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, que el paquete rpm de nginx instala automáticamente (la dependencia se mantiene para que las instalaciones existentes se actualicen sin perder esas directivas; se eliminará en unos meses y ambos módulos pasarán a ser realmente opcionales). Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Mainline más reciente: docker pull codeitus/nginx:mainline
  • esta versión exacta: docker pull codeitus/nginx:1.31.5

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Función: control del API.
  • Función: ubicaciones con predicado.
  • Función: el módulo ngx_http_json_module.
  • Función: la directiva “client_body_early_read”.
  • Corrección: puede producirse un uso después de liberar memoria (use-after-free) en un proceso de trabajo si se usaba proxy con almacenamiento en búfer y se producía un error al enviar la respuesta a un cliente HTTP/2.
  • Corrección: el proceso de trabajo ya no puede no finalizar o no deberían aparecer alertas “accept4() failed (9: Bad file descriptor)” en los registros si el proceso de trabajo se queda sin descriptores de archivo antes del apagado limpio.
  • Corrección: las solicitudes a los backends FastCGI y uwsgi se formaban de forma incorrecta si el nombre de un parámetro era demasiado largo.
  • Correcciones en HTTP/3, ngx_http_slice_module y ngx_http_memcached_module.

Publicados los paquetes RPM y DEB de NGINX 1.31.4 Mainline con HTTP/3, Brotli, TLS 1.3 y OpenSSL 4.0.1 para EL7/EL8/EL9/EL10, Ubuntu 22.04/24.04

nginx 1.31.4 Mainline con soporte para HTTP/3 ha sido añadido al repositorio de CodeIT. http2 y ngx_cache_purge están integrados, y OpenSSL está enlazado dinámicamente con el OpenSSL oficial 4.0.1 con soporte para QUIC. El módulo de compresión Brotli de Google y ngx_http_geoip2 se distribuyen como módulos dinámicos, en nginx-module-brotli y nginx-module-geoip2, que el paquete rpm de nginx instala automáticamente (la dependencia se mantiene para que las instalaciones existentes se actualicen sin perder esas directivas; se eliminará en unos meses y ambos módulos pasarán a ser realmente opcionales). Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 7, 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Los demás módulos dinámicos se empaquetan por separado y son opcionales: nginx-module-lua con lua-resty-core y lua-resty-lrucache, nginx-module-acme para certificados ACMEv2 automáticos, nginx-module-njs, nginx-module-perl, nginx-module-xslt y nginx-module-image-filter. Cada uno incluye su propia línea load_module en /etc/nginx/modules-enabled, así que funciona en cuanto se instala y no hay que editar nginx.conf a mano. Lua y ACME se compilan para EL9, EL10 y Ubuntu; EL7 dispone de nginx-module-geoip en su lugar, y njs, Perl, XSLT e image-filter solo están disponibles en rpm.

La misma versión está en Docker Hub como codeitus/nginx: la imagen se construye sobre AlmaLinux 9 a partir de estos mismos paquetes y se publica para amd64 y arm64:

  • la imagen más reciente, del pool que se haya publicado último: docker pull codeitus/nginx
  • la imagen Mainline más reciente: docker pull codeitus/nginx:mainline
  • esta versión exacta: docker pull codeitus/nginx:1.31.4

Para HTTP/3 hay que publicar también el puerto UDP, no solo los TCP: docker run -d -p 80:80 -p 443:443 -p 443:443/udp codeitus/nginx

Cambios principales:

  • Feature: la directiva “proxy_protocol” en los módulos stream y mail ahora admite la versión 2 del protocolo PROXY.
  • Change: ahora las solicitudes HTTP/2 y gRPC a los backends siempre se envían con el pseudocabecero “:authority” y las solicitudes HTTP/1.1, con la cabecera “Host”.
  • Bugfix: podría producirse un fallo de segmentación en un proceso trabajador si se usaba el método “select”.
  • Bugfix: ahora las respuestas incompletas de gRPC con una línea de cabecera “Content-Length” distinto de cero se tratan como malformadas.
  • Bugfix: corrección en compatibilidad binaria con módulos de terceros que usan códigos de scripts; el fallo apareció en la versión 1.31.3.
  • Bugfix: en el módulo ngx_http_perl_module.
  • Bugfixes en HTTP/2, HTTP/3, ngx_http_image_filter_module y ngx_http_grpc_module.