Nuevas versiones de nginx 1.27.5, del fork FreeNginx 1.27.6 y del módulo de JavaScript njs 0.8.10

Se ha presentado la versión principal de nginx 1.27.5, que continúa el desarrollo de nuevas capacidades. En la rama estable paralela 1.26.x, solo se hacen cambios relacionados con la corrección de errores graves y vulnerabilidades. En el futuro, la rama estable 1.28 se formará sobre la base de la rama principal 1.27.x. El código del proyecto está escrito en C y se distribuye bajo la licencia BSD.

Entre los cambios en nginx 1.27.5:

  • Para conexiones que utilizan el protocolo QUIC, se ha añadido soporte para el algoritmo de control de congestión CUBIC (RFC 9438), cuya operación consiste en aumentar gradualmente el tamaño de la ventana de congestión hasta la aparición de pérdida de paquetes, después de lo cual el tamaño de la ventana se reduce al valor anterior a la pérdida. En las pruebas realizadas, el uso de CUBIC permitió reducir el tiempo de transferencia de un archivo de 500 MB en un 24 % con retrasos de 40 ms y un BDP de 750K (Producto de Retardo de Ancho de Banda) y en un 73 % con retrasos de 100 ms y un BDP de 9M.
  • El tamaño máximo de las sesiones SSL que se pueden almacenar en caché en la memoria compartida se ha aumentado a 8192.
  • Se ha configurado la construcción con la biblioteca C Musl.
  • Se ha trabajado en la optimización del rendimiento y en la corrección de errores en la implementación de HTTP/3.
  • Se han corregido errores en la implementación de las directivas «grpc_ssl_password_file», «proxy_ssl_password_file» y «uwsgi_ssl_password_file», que se manifestaban al cargar certificados SSL y claves de cifrado desde variables.
  • Se han resuelto problemas con la configuración de las variables $ssl_curve y $ssl_curves al utilizar implementaciones de curvas elípticas en OpenSSL.

Además, se puede destacar la publicación de versiones estables del proyecto FreeNginx 1.27.5 y 1.27.6, que es un fork de Nginx. El desarrollo del fork está a cargo de Maxim Dunin, uno de los desarrolladores clave de Nginx. FreeNginx se posiciona como un proyecto no comercial, asegurando el desarrollo de la base de código de Nginx sin interferencia corporativa.

Cambios en FreeNginx 1.27.5 y 1.27.6:

  • Se han resuelto problemas al utilizar OpenSSL 3.5 (en las variables $ssl_curve y $ssl_curves no aparecía el nombre del grupo X25519MLKEM768).
  • Se ha evitado el cierre inesperado del proceso en configuraciones con la directiva proxy_ssl_password_file, que se manifestaba al especificar variables en las directivas proxy_ssl_certificate y proxy_ssl_certificate_key.
  • La directiva listen ha añadido soporte para el parámetro multipath.
  • No se permite la reutilización de sesiones SSL entre servidores que utilizan diferentes certificados en la directiva ssl_trusted_certificate, al habilitar la verificación de certificados SSL del cliente.
  • Se ha resuelto el problema de la reutilización de sesiones en el contexto de otro servidor virtual al usar TLSv1.3 con OpenSSL 1.1.1e+.
  • Se ha resuelto un problema al usar zlib-ng.

Además, se ha lanzado njs 0.8.10, un módulo para integrar intérpretes de JavaScript en el servidor http nginx. Se admiten conexiones de varios motores de JavaScript. Se ofrece como motor base el propio motor QuickJS, con soporte para la especificación ECMAScript 2023. Njs permite utilizar scripts de JavaScript en la configuración para ampliar las capacidades de nginx. Los scripts pueden usarse para definir lógica de procesamiento de solicitudes avanzada, generar configuraciones, generar dinámicamente respuestas, modificar solicitudes/respuestas o crear de manera rápida stubs para solucionar problemas en aplicaciones web.

Cambios en njs 0.8.10:

  • Se añadió soporte para la API WebCrypto, TextEncoder y TextDecoder en el motor de JavaScript QuickJS.
  • Se añadieron nuevos módulos querystring, crypto y xml en el motor QuickJS.
  • Se añadió soporte para la biblioteca QuickJS-NG.
  • En el módulo de nginx se implementó la lectura del contenido de r.requestText y r.requestBuffer desde un archivo temporal.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster