Se ha publicado la versión principal de nginx 1.29.1, en la que se continúa el desarrollo de nuevas características. En la rama estable alternativa 1.28.x solo se incorporan cambios relacionados con la corrección de errores graves y vulnerabilidades. En el futuro, a partir de la rama principal 1.29.x se formará una nueva rama estable 1.30. El código del proyecto está escrito en C y se distribuye bajo la licencia BSD.
En esta nueva versión:
- Se ha corregido una vulnerabilidad (CVE-2025-53859) en el módulo ngx_mail_smtp_module, que provoca la lectura de datos de la memoria fuera del búfer al procesar valores de nombre de usuario y contraseña especialmente diseñados al utilizar el método de autenticación «none». Esta vulnerabilidad puede resultar en la fuga del contenido de la memoria del proceso de nginx en una solicitud HTTP a un externo. servidor autenticación. Parche.
- Por defecto, la compresión de certificados TLSv1.3 está desactivada.
- Se ha añadido la directiva «ssl_certificate_compression» para gestionar la compresión. de certificados TLS.
- Se ha añadido soporte para el modo 0-RTT en la implementación del protocolo QUIC, disponible en sistemas con OpenSSL 3.5.1 y versiones más recientes.
- Se ha corregido un error que provocaba la agregación del respuesta HTTP 103 al utilizar HTTP/2 y la directiva «early_hints».
- Se ha corregido un error en el manejador del parámetro «none» en la directiva «smtp_auth».
- Se ha resuelto un problema en la implementación de HTTP/3 con el tratamiento del número de puerto en el encabezado «Host».
- Se ha solucionado un problema que se manifestaba al usar los mismos valores en los encabezados «Host» y «:authority» al utilizar HTTP/2.
- Se ha optimizado la compilación en NetBSD 10.0.
Por separado, la empresa F5 ha presentado la versión preliminar del módulo ngx_http_acme, que proporciona funcionalidades para la automatización de la solicitud, obtención y renovación de certificados utilizando el protocolo ACMEv2 (Automatic Certificate Management Environment), utilizado por la autoridad certificadora Let’s Encrypt. Al utilizar http_acme, los administradores no necesitan preocuparse por la renovación de certificados, ya que, según los parámetros en la configuración, el módulo obtendrá los certificados necesarios de Let’s Encrypt o de otro servicio que soporte el protocolo ACME. El código del módulo está escrito en Rust utilizando el SDK NGINX-Rust. acme_issuer letsencrypt { uri https://acme-v02.api.letsencrypt.org/directory; state_path /var/cache/nginx/acme-letsencrypt; accept_terms_of_service; } server { listen 80; # Desafío ACME HTTP-01 location / { return 404; } } server { listen 443 ssl; server_name .example.com; acme_certificate letsencrypt; ssl_certificate $acme_certificate; ssl_certificate_key $acme_certificate_key; ssl_certificate_cache max=2; }
Fuente: opennet.ru
