Icono del sitio Binario 0

Cómo Habilitar HTTP/3 en Nginx

Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero

Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero

HTTP/3 (HTTP sobre QUIC) usa QUIC sobre UDP para mejorar la latencia de establecimiento de conexión y ofrecer 0-RTT. Nginx incluye soporte experimental para HTTP/3 a partir de la rama 1.25.x, pero el módulo no se construye por defecto: hay que compilar nginx con soporte para HTTP/3 (o instalar un paquete ya compilado que lo incluya) y usar una biblioteca TLS compatible (OpenSSL 3.5.1+, BoringSSL, o alternativas compatibles).

Requisitos previos

  1. Versión de nginx: Nginx ≥ 1.25 (módulo ngx_http_v3_module).
  2. Biblioteca TLS: OpenSSL moderno, BoringSSL o LibreSSL/QuicTLS.
  3. Certificados TLS válidos (Let's Encrypt o comercial).
  4. Puertos: abrir UDP/443 además de TCP/443 en el firewall o proveedor de nube.
  5. Compilación: si no usas paquetes precompilados, necesitarás compilar nginx.

Opciones de instalación

Ejemplo de configuración (nginx.conf — extracto)

En el bloque server { ... } de tu configuración HTTPS:

server {
    http2 on;
    http3 on;

    listen 443 ssl; 
    listen [::]:443 ssl;

    listen 443 quic reuseport;
    listen [::]:443 quic reuseport;

    server_name ejemplo.com;

    ssl_certificate /etc/ssl/certs/ejemplo.fullchain.pem;
    ssl_certificate_key /etc/ssl/private/ejemplo.privkey.pem;

    ssl_protocols TLSv1.2 TLSv1.3;

    quic_retry on;
    ssl_early_data on;

    add_header Alt-Svc 'h3=":443"; ma=86400' always;
    add_header QUIC 'h3' always;

    location / {
        root /var/www/html;
        index index.html;
    }
}

Puntos clave:

Recomendaciones de TLS y 0-RTT

Firewall y red

Pruebas y verificación

  1. Navegador: en las DevTools, revisa la columna Protocol para ver si usa h3.
  2. curl (con soporte HTTP/3): curl --http3 -I https://ejemplo.com
  3. Herramientas online: existen testers HTTP/3 que validan la conexión y protocolo negociado.

Resolución de problemas

Consideraciones operativas

Salir de la versión móvil