Configuración de un proxy inverso

watch 3m, 25s
views 2

16:51, 28.11.2022

Contenido del artículo
arrow

  • Por qué es necesario un proxy inverso
  • Uso de Nginx como servidor proxy inverso
  • Cómo configurar Nginx como proxy inverso para un proxy que no sea HTTP

Un servidor proxy inverso es un tipo de servidor proxy que transmite las peticiones de los clientes de una red externa a uno o varios servidores situados en la red interna. En el siguiente artículo se explicará para qué sirve y cómo configurarlo en caso de ser necesario utilizando como ejemplo el servidor web Nginx.

Por qué es necesario un proxy inverso

Puede haber varios escenarios para el uso de la tecnología. Veamos las principales:

  1. Ocultación de la existencia de los servidores consultados, así como de sus características.
  2. Protección DoS y DDoS - los administradores del sistema instalan un firewall de software junto con el proxy inverso para este propósito.
  3. Como muleta - si el sitio principal no soporta la conexión vía SSL (https://www.hostzealot.com/ssl ), puede conectar el proxy inverso con un acelerador SSL de hardware.
  4. Uso como equilibrador de carga: un servidor de este tipo puede proporcionar un equilibrio de carga entre dos, tres o más servidores.
  5. Reducción de la carga del servidor primario colocando contenidos dinámicos y estáticos en el proxy inverso. Este método suele denominarse aceleración.
  6. Compresión de datos para reducir el tiempo de carga.
  7. Puede utilizarse para realizar pruebas A/B de forma segura y cómoda.

Ahora ya sabe para qué sirve el proxy inverso. Pasemos a la práctica.

Uso de Nginx como servidor proxy inverso

Lo primero que hay que hacer es abrir el archivo de configuración del bloque de servidores de dominio. En él, debe especificar la ubicación y el servidor proxy:

server {
    listen 80;
    server_name www.example.com example.com;
 
    location /app {
       proxy_pass http://127.0.0.1:7070;
	}

}


La URL del servidor a proxiar se establece con la directiva proxy_pass. Esto permite el uso de HTTP o HTTPS:

  • como un protocolo;
  • dominio;
  • Dirección IP;
  • puerto opcional;
  • identificador de recursos unificado como dirección.

La configuración anterior indica a Nginx que reenvíe todas las peticiones de /app al servidor proxy en http://127.0.0.1:7070. Puede cambiarlo por la IP que desee. Esto se proporciona sólo como referencia.

configuración de un proxy inverso

Los archivos de bloqueo del servidor se almacenan en /etc/nginx/sites-available - si utiliza Ubuntu o Debian y en /etc/nginx/conf.d si utiliza CentOS.

Para ilustrar cómo funciona la ubicación y la directiva proxy_pass, veamos un ejemplo sencillo:

server {
    listen 80;
    server_name www.example.com example.com;
 
    location /blog {
       proxy_pass http://node1.com:6000/wordpress/;
	}

}


Cuando un usuario visita http://example.com/blog/my-post, el servidor web Nginx envía la solicitud a http://node1.com:6000/wordpress/my-post.

Si la dirección del servidor proxy contiene un identificador uniforme de recursos, ( /wordpress/ ), la URI de la petición traducida al servidor proxy se sustituye por la URI especificada en la directiva. En el caso de que se especifique la dirección del servidor proxy sin un identificador de recurso unificado, se pasa al servidor proxy la URI completa de la solicitud.

Cómo configurar Nginx como proxy inverso para un proxy que no sea HTTP

Para ello se utiliza una de las cuatro directivas:

  1. fastcgi_pass - proxy inverso al servidor FastCGI.
  2. uwsgi_pass - proxy inverso al servidor uwsgi.
  3. scgi_pass - proxy inverso al servidor SCGI.
  4. memcached_pass - proxy inverso al servidor Memcached.

Por ejemplo, muy a menudo Nginx se utiliza como un proxy inverso PHP-FPM:

server {
 
	# ... other directives
 
    location ~ .php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
	}

}


Cuando cambie el archivo de configuración, asegúrese de reiniciar el servidor web Nginx para que los cambios surtan efecto. Si tiene alguna pregunta, póngase en contacto con nuestros especialistas a través del chat en vivo.

Compartir

¿Te ha resultado útil este artículo?

Ofertas populares de VPS

-15.6%

CPU
CPU
3 Xeon Cores
RAM
RAM
1 GB
Space
Space
20 GB SSD
Bandwidth
Bandwidth
30 Mbps
DDoS Protected SSD-KVM 1024 Linux

38 /mes

/mes

Facturado cada 12 meses

-5.4%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
60 GB HDD
Bandwidth
Bandwidth
300 Gb
wKVM-HDD HK 2048 Windows

11.69 /mes

/mes

Facturado cada 12 meses

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-KVM-SSD 8192 Linux

115.5 /mes

/mes

Facturado cada 12 meses

CPU
CPU
6 Epyc Cores
RAM
RAM
8 GB
Space
Space
100 GB NVMe
Bandwidth
Bandwidth
Unlimited
Keitaro KVM 8192
OS
CentOS
Software
Software
Keitaro
/mes

Facturado mensualmente

-21.4%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
500 GB
wKVM-SSD 8192 HK Windows

67 /mes

/mes

Facturado cada 12 meses

-8.4%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
75 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-wKVM-SSD 2048 Windows

37.4 /mes

/mes

Facturado cada 12 meses

-13.1%

CPU
CPU
2 Xeon Cores
RAM
RAM
512 MB
Space
Space
10 GB SSD
Bandwidth
Bandwidth
300 GB
KVM-SSD 512 HK Linux

7 /mes

/mes

Facturado cada 12 meses

-9.7%

CPU
CPU
10 Xeon Cores
RAM
RAM
64 GB
Space
Space
300 GB SSD
Bandwidth
Bandwidth
Unlimited
wKVM-SSD 65536 Windows

187.5 /mes

/mes

Facturado cada 12 meses

-20.6%

CPU
CPU
6 Xeon Cores
RAM
RAM
8GB
Space
Space
100GB SSD
Bandwidth
Bandwidth
500GB
KVM-SSD 8192 HK Linux

59 /mes

/mes

Facturado cada 12 meses

-21.5%

CPU
CPU
2 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
300 GB
wKVM-SSD 4096 HK Windows

40 /mes

/mes

Facturado cada 12 meses

Otros artículos sobre este tema

cookie

¿Acepta las cookies y la política de privacidad?

Utilizamos cookies para asegurar que damos la mejor experiencia en nuestro sitio web. Si continúa sin cambiar la configuración, asumiremos que acepta recibir todas las cookies del sitio web HostZealot.