nginx 1.25 arrives with support for HTTP/3

Nginx

Nginx is a high-performance lightweight web server/reverse proxy and proxy

Few days ago the launch of the first version of the new main branch nginx 1.25, within which the development of new functionalities will continue.

For those who don't know about Nginx, you should know that is a lightweight web server/reverse proxy high performance and a proxy for email protocols (IMAP/POP3).

NGINX is a lightweight, high-performance web server that uses an event-based asynchronous architecture to handle many concurrent requests. It is designed to handle static and dynamic content, and can be used to serve web pages, streaming media, and API requests.

NGINX also supports dynamic modules, which allow users to add or remove features as needed. This makes it easy to customize NGINX for specific use cases.

Main news in nginx 1.25

The release of this new version is due to the fact that the addition of the ngx_http_v3 module with support was made experimental for the protocol HTTP / 3, although as such the module is disabled by default and for those who want to test the module they should know that the option “--with-http_v3_module» is enabled in the build.

For the module to work, it is recommended to build with cryptographic libraries that support the QUIC protocol, such as BoringSSL, LibreSSL or QuicTLS. Compiling with OpenSSL will use a compatibility layer that does not support sending client data early (ssl_early_data).

It is important to mention that to accept HTTP/3 connections over TLS requires support for the TLSv1.3 protocol, which is available since OpenSSL version 1.1.1.

For those who are unaware of the new HTTP/3 protocol, you should know that is defined by the use of the QUIC protocol (Quick UDP Internet Connections) as transport for HTTP/2. QUIC is a plugin to the UDP protocol that supports multiplexing of multiple connections and provides encryption methods equivalent to TLS/SSL. The protocol was created in 2013 by Google as an alternative to TCP + TLS for the Web, solving the problem of long connection setup and handshaking time in TCP and eliminating delays due to packet loss during data transfer. .

Regarding the development of the stable branch 1.24.x, this will still be kept in parallel and only changes related to the elimination of serious bugs and vulnerabilities are made, since the main attention will be focused on the development of the current branch and also on joining efforts for the stable branch 1.26 that will be formed from the main branch 1.25. xy which is expected to arrive next year.

Finally if you are interested in knowing more about it you can check the details In the following link.

For ordinary users who do not have the task of ensuring compatibility with third-party modules, it is recommended to use the main branch, based on which versions of the commercial product Nginx Plus are formed every three months.

Get nginx 1.25

For those interested in being able to obtain the new version, they must do the following, depending on the case of their distribution.

For RHEL and derivatives, you must add the repository with the following command:

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

And add this at the end

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

And we install with:

dnf install nginx

While for Ubuntu and derivatives of it, they must type the following:

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

And add this to the file:

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

And we proceed to install with:

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

Now for the case of AmazonLinux 2023, they should type:

sudo yum install yum-utils

We add the following in /etc/yum.repos.d/nginx.repo with the following content:

[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

And we proceed to install with:

sudo yum instalar nginx

Finally, for those who prefer the compilation of the package, this can be done with the following commands (once already downloaded and being inside the code directory):

./configure
make
sudo make install

Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: AB Internet Networks 2008 SL
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.