Linux Adictos Darkcrizt  

nginx 1.25 llega con soporte para HTTP/3

Nginx

Nginx ​ es un servidor web/proxy inverso ligero de alto rendimiento y un proxy

Hace pocos días se dio a conocer el lanzamiento de la primera versión de la nueva rama principal nginx de 1.25, dentro de la cual se continuará con el desarrollo de nuevas funcionalidades.

Para quienes desconocen de Nginx, deben saber que​ es un servidor web/proxy inverso ligero de alto rendimiento y un proxy para protocolos de correo electrónico (IMAP/POP3).

NGINX es un servidor web liviano y de alto rendimiento que utiliza una arquitectura asincrónica basada en eventos para manejar muchas solicitudes simultáneas. Está diseñado para manejar contenido estático y dinámico, y se puede usar para servir páginas web, transmisión de medios y solicitudes de API.

NGINX también admite módulos dinámicos, que permiten a los usuarios agregar o eliminar funciones según sea necesario. Esto facilita la personalización de NGINX para casos de uso específicos.

Principales novedades de nginx 1.25

El lanzamiento de esta nueva versión es debido a que se realizo la adición del módulo ngx_http_v3 con soporte experimental para el protocolo HTTP/3, aunque como tal el módulo está deshabilitado de forma predeterminada y para quienes desean realizar la prueba del módulo deben de saber que se requiere que la opción «–with-http_v3_module» esté habilitada en la compilación.

Para que el módulo funcione, se recomienda construir con bibliotecas criptográficas que admitan el protocolo QUIC, como BoringSSL, LibreSSL o QuicTLS. La compilación con OpenSSL utilizará una capa de compatibilidad que no admite el envío anticipado de datos del cliente (ssl_early_data).

Es importante mencionar que para aceptar conexiones HTTP/3 a través de TLS requiere la compatibilidad con el protocolo TLSv1.3, que está disponible desde la versión 1.1.1 de OpenSSL.

Para quienes desconocen del nuevo protocolo HTTP/3, deben saber que se define por el uso del protocolo QUIC (Quick UDP Internet Connections) como transporte para HTTP/2. QUIC es un complemento del protocolo UDP que admite la multiplexación de varias conexiones y proporciona métodos de cifrado equivalentes a TLS/SSL. El protocolo fue creado en 2013 por Google como una alternativa a TCP + TLS para la Web, resolviendo el problema de la configuración de conexión prolongada y el tiempo de negociación en TCP y eliminando las demoras debido a la pérdida de paquetes durante la transferencia de datos.

En cuanto al desarrollo de la rama estable 1.24.x, esta aún se mantendrá en paralelo y solo se realizan cambios relacionados con la eliminación de errores graves y vulnerabilidades, dado que la principal atención se centrara en el desarrollo de la actual rama y tambien en sumar esfuerzos para la rama estable 1.26 que se formará a partir de la rama principal 1.25.x y que se espera que llegue el proximo año.

Finalmente si estás interesado en poder conocer más al respecto puedes consultar los detalles en el siguiente enlace.

Para los usuarios comunes que no tienen la tarea de garantizar la compatibilidad con módulos de terceros, se recomienda utilizar la rama principal, en base a la cual se forman versiones del producto comercial Nginx Plus cada tres meses.

Obtener nginx 1.25

Para los interesados en poder obtener la nueva versión, deben realizar lo siguiente, según sea el caso de su distribucion.

Para RHEL y derivados, deben de añadir el repositorio con el siguiente comando:

sudo nano /etc/yum.repos.d/nginx.repo

Y añaden esto al final

[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/rhel/$releasever/$basearch/
gpgcheck=0
enabled=1

E instalamos con:

dnf install nginx

Mientras que para Ubuntu y derivados de este, deben teclear lo siguiente:

sudo nano etc/apt/sources.list.d/nginx.list

Y añadir esto al archivo:

deb https://nginx.org/packages/ubuntu/ $(lsb_release -sc) nginx
deb-src https://nginx.org/packages/ubuntu/ $(lsb_release -sc) nginx

Y procedemos a instalar con:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key
sudo apt update
sudo apt install nginx

Ahora para el caso de Amazon Linux 2023, deben de teclear:

sudo yum install yum-utils

Añadimos lo siguiente en /etc/yum.repos.d/nginx.repo con el siguiente contenido:

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/amzn/2023/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
priority=9

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/amzn/2023/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
priority=9

Y procedemos a instalar con:

sudo yum instalar nginx

Finalmente para quienes prefieren la compilación del paquete, esta la pueden hacer con los siguientes comandos (una vez ya descargado y estando dentro del directorio del codigo):

./configure
make
sudo make install

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.