Nuevas versiones de nginx 1.25.5 y fork FreeNginx 1.26.0

Se ha lanzado la rama principal de nginx 1.25.5, dentro de la cual continúa el desarrollo de nuevas funciones. La rama estable mantenida en paralelo 1.24.x contiene solo cambios relacionados con la eliminación de errores y vulnerabilidades graves. En el futuro, se formará una rama estable 1.25 basada en la rama principal 1.26.x. El código del proyecto está escrito en C y distribuido bajo la licencia BSD.

Entre los cambios:

  • Se ha agregado soporte para servidores virtuales al módulo de transmisión, cuya configuración se define en el bloque "servidor {...}" mediante la directiva nombre_servidor. servidor { nombre_servidor ~^(www\.)?(.+)$; proxy_pass www.$2:12345; }
  • Se agregó un nuevo módulo ngx_stream_pass_module, diseñado para reenviar las conexiones recibidas directamente a cualquier conector de escucha asociado con módulos como http, stream y mail. transmitir {servidor {escuchar 12345 ssl; ssl_certificate dominio.crt; ssl_certificate_key dominio.key; pase 127.0.0.1:8000; } }
  • La directiva de escucha del módulo de transmisión implementa soporte para los parámetros "diferido" (habilita la aceptación diferida), "accept_filter" (filtro de conexión entrante aplicado antes de llamar a la función de aceptación) y "setfib" (configuración de la tabla de enrutamiento).
  • Para algunas arquitecturas, se ha implementado soporte para determinar el tamaño de bloque (línea de caché) utilizado para transferir datos entre la memoria caché de la CPU y la memoria.
  • En los sistemas Apple Silicon, se agregó soporte para el administrador de paquetes Homebrew.
  • Se han resuelto los problemas de compilación cruzada para Windows.
  • Se corrigió un error que causaba que las conexiones se cerraran al usar el modo 0-RTT en el protocolo QUIC.

Además, podemos destacar la publicación de una versión estable del proyecto FreeNginx 1.26.0, que desarrolla un fork de Nginx. La bifurcación está siendo desarrollada por Maxim Dunin, uno de los desarrolladores clave de Nginx. FreeNginx se posiciona como un proyecto sin fines de lucro que proporciona desarrollo del código base de Nginx sin intervención corporativa. La versión 1.26.0 está marcada como una versión estable e incorpora cambios y correcciones de las versiones de la rama principal de Nginx 1.25. Entre otras cosas, FreeNginx 1.26.0 incluye soporte experimental para el protocolo HTTP/3, mejoras para contrarrestar ataques DoS y correcciones relacionadas con el procesamiento de E/S asíncrono.

Al mismo tiempo, se lanzó njs 0.8.4, un intérprete de JavaScript para el servidor web nginx. El intérprete njs implementa los estándares ECMAScript y le permite ampliar la capacidad de nginx para procesar solicitudes utilizando scripts en la configuración. Los scripts se pueden utilizar en un archivo de configuración para definir una lógica avanzada para procesar solicitudes, generar una configuración, generar dinámicamente una respuesta, modificar una solicitud/respuesta o crear rápidamente apéndices para resolver problemas en aplicaciones web. En la nueva versión: se agregó compatibilidad con el motor JavaScript QuickJS a la CLI; se agregó la capacidad de configurar el encabezado del servidor; Se implementó una verificación de duplicación de variables establecidas a través de js_set.

Fuente: opennet.ru

Añadir un comentario