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).

Actualización de seguridad: Publicados los paquetes RPM y DEB de mod_http3 v0.0.71

mod_http3 v0.0.71 ha sido añadido al repositorio de CodeIT. 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.

Cambios principales:

  • Un host con “h3” en Protocols ahora sirve HTTP/3 con el certificado de mod_ssl resuelto para él (SSLCertificateFile y mod_md por igual), de la misma forma en que mod_http2 monta sobre mod_ssl. Se eliminan H3CertificatePath y H3CertificateKeyPath; elimínalos de las configuraciones existentes.
  • Se selecciona el certificado de HTTP/3 mediante SNI, de modo que cada host virtual en un puerto compartido sirva su propio certificado en lugar del del primer host.
  • Se proporciona a cada host virtual su propia configuración de mod_http3 (AP_MODULE_FLAG_ALWAYS_MERGE). Un host sin directivas H3 solía compartir la configuración del servidor principal, por lo que ajustes por host como H3AltSvc y H3AltSvcMaxAge se ignoraban en silencio y los hosts no podían llevar su propio certificado.
  • Conjunto de pruebas: stop.conf ahora utiliza el mismo archivo pid que httpd.conf, por lo que “apachectl -k stop” detiene realmente el servidor en las compilaciones de httpd cuyo archivo pid predeterminado está en run/; antes, en cada reinicio del conjunto de pruebas se seguía hablando con el servidor anterior.

Vulnerabilidades corregidas:

  • SECURITY: El certificado y la clave de HTTP/3 se cargan en post_config, mientras httpd sigue ejecutándose con privilegios, de modo que una clave sólo para root ya no falla en el proceso hijo sin privilegios y tanto mod_ssl como mod_http3 leen los mismos archivos.

Actualización de seguridad: Publicados los paquetes RPM y DEB de mod_http3 v0.0.70

mod_http3 v0.0.70 ha sido añadido al repositorio de CodeIT. 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.

Cambios principales:

  • Se ha anunciado una tabla dinámica QPACK, dimensionada por H3QpackTableCapacity y H3QpackBlockedStreams, para que los encabezados de las solicitudes se compriman igual que sobre HTTP/2.
  • El pool de workers de las solicitudes ahora es configurable con H3MinWorkers, H3MaxWorkers y H3MaxWorkerIdleSeconds en lugar de un número fijo de 16 a 64 hilos.
  • Se ha añadido H3StreamTimeout: un cliente que deja de leer ya no puede aparcar un worker de solicitudes hasta que desaparezca.
  • Se ha añadido H3MaxStreamErrors: se cierra una conexión cuyo cliente sigue enviando solicitudes malformadas en lugar de responderle para siempre.
  • Se ha publicado el entorno TLS de mod_ssl (SSL_PROTOCOL, SSL_CIPHER y similares) para solicitudes HTTP/3, que mod_ssl no gestiona.
  • Se ha añadido H3SessionTickets, para que un operador pueda controlar si los clientes que vuelven reanudan la sesión en lugar de ejecutar un handshake completo.
  • Se ha añadido H3SocketBufferSize, para que el socket QUIC ya no descarte datagramas de un búfer de recepción del sistema operativo insuficiente cuando la conexión va a toda velocidad.
  • Se aplica H3IdleTimeout en el event loop del módulo, de modo que una conexión sin solicitudes se cierra en lugar de mantenerse abierta mediante pings de keepalive de QUIC.
  • Se rechaza una solicitud HTTP/3 malformada con un error de stream en lugar de cerrar la conexión, para que las solicitudes en curso junto a ella sobrevivan.
  • Se compila con httpd 2.4.x, además de trunk; los buckets de respuesta y el hook child_stopped ahora se eligen en tiempo de compilación.
  • Se detecta el httpd stable o devel en configure y se retrotrae el graceful drain al branch 2.4.x.

Vulnerabilidades corregidas:

  • SECURITY: Se ha actualizado el submodule de httpd para que mpm_event tolere una conexión que nunca aceptó, terminando con el crash del hijo al servir un ErrorDocument por HTTP/3.
  • SECURITY: Se aplican LimitRequestFields y LimitRequestFieldSize a HTTP/3, para que el cliente ya no pueda hacer crecer la memoria de un stream con encabezados sin límite.

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.

Actualización de seguridad: Publicados los paquetes RPM y DEB de openssl 4.0.2

openssl 4.0.2 ha sido añadido al repositorio de CodeIT. 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.

Cambios principales:

  • OpenSSL 4.0.2 es un lanzamiento de corrección de seguridad. La CVE más grave corregida en este lanzamiento es Moderate.
  • Este lanzamiento incorpora las siguientes correcciones de errores y mitigaciones:
  • Se corrigió la comprobación de las etiquetas de autenticación para cifrados vacíos en cifradores AEAD en modo CCM.

Vulnerabilidades corregidas:

  • Se corrigió que el servidor QUIC pudiera provocar una doble liberación al procesar el paquete `INITIAL`. (CVE-2026-18798)
  • Se corrigió un desbordamiento de búfer en el montón al desenrollar claves en CMS. (CVE-2026-63072)
  • Se corrigió una desreferencia de puntero no válida en el servidor CMP mediante un `protectionAlg` manipulado. (CVE-2026-63076)
  • Se corrigió el crecimiento de memoria sin límite en la cola de canales entrantes del servidor QUIC. (CVE-2026-14456)
  • Se corrigió que el servidor RPK pudiera, al seleccionar el algoritmo de firma, desreferenciar un certificado que no existe. (CVE-2026-14457)
  • Se corrigió el uso excesivo de memoria al almacenar en búfer registros DTLS para una época futura. (CVE-2026-54874)
  • Se corrigió una fuga de memoria del lado del cliente al comprobar respuestas de OCSP. (CVE-2026-54876)
  • Se corrigió que un Sender DN no fiable se usara como cadena de formato en la validación de la respuesta CMP. (CVE-2026-63073)
  • Se corrigió el crecimiento indefinido de la caché en CMP de `extraCerts`. (CVE-2026-63074)
  • Se corrigió que la retención de paquetes que solo contienen ACK en QUIC pudiera causar agotamiento de memoria. (CVE-2026-63075)
  • Se corrigió la posibilidad de falsificaciones AEAD con texto cifrado vacío al usar `EVP_Cipher()`. (CVE-2026-75803)

Las bibliotecas con soporte para QUIC siguen distribuyéndose como un paquete separado, no conflictivo, openssl-quic-libs, con su propio sufijo .so.81.4, para evitar conflictos con el .so.X oficial.

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.

Publicados los paquetes RPM y DEB de sshoq 0.5.0

sshoq 0.5.0 ha sido añadido al repositorio de CodeIT. Los paquetes se han compilado para RHEL, CentOS, AlmaLinux, Rocky Linux y Oracle Linux 8, 9 y 10, y para Ubuntu 22.04 y 24.04.

Cambios principales:

  • Citas y escape de rutas con estilo OpenSSH en el cliente SFTP
  • feat: muestra el progreso de la transferencia (porcentaje y velocidad) para las operaciones de sftp/scp
  • feat: se ha añadido la posibilidad de cancelar transferencias de sftp/scp con Ctrl+C
  • feat: añadidos los accesos directos cd con estilo OpenSSH en el cliente SFTP
  • feat: añadida la compatibilidad con comodines para los archivos de origen de put/get en el cliente SFTP
  • perf: canalización de transferencias SFTP para eliminar el cuello de botella de ida y vuelta por bloque
  • fix: se incluye la ruta del archivo en todos los mensajes de error del cliente/servidor de sftp
  • sftp: por defecto se siguen los enlaces simbólicos en el cliente, se agrega la opción -no-follow-symlinks
  • perf: se sustituye el protocolo JSON de SFTP por un formato binario compacto
  • Aumenta la ventana de transferencia
  • sftp: continúo get -r después de archivos con error permission-denied