1000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!
Redirigir el tráfico web a un puerto específico
Esta guía trata sobre la redirección del tráfico web a un puerto específico, incluso cuando se utiliza una IP dedicada y una aplicación web específica (como Node o Varnish, por ejemplo).
Requisitos previos
- instalar HAProxy en el Servidor Cloud
Redirigir el tráfico web a un puerto específico
Por defecto, en el Servidor Cloud, el tráfico web se envía a Apache. Para enviar solicitudes a un script Node u otro servicio (siempre y cuando "escuche" en un puerto entre 4000 y 4009), debe utilizar HAProxy.
Esto se aplica especialmente a servidores como Express, Socket.IO, Meteor.js, Nuxt.js, Django, Flask, Ruby on Rails e incluso Java (J2E), etc.
Para ello, asegúrese de que el servicio esté escuchando en un puerto entre 4000 y 4009 (generalmente con server.listen(4000)
para Express o un servidor HTTP Node básico, pero dependiendo del tipo de proyecto puede haber otros métodos, como un archivo de configuración, en el código u otro lugar) y en todas las interfaces (0.0.0.0). También será necesario configurar HAProxy como se muestra en el siguiente ejemplo:
- Inicie sesión en el Manager de Infomaniak (manager.infomaniak.com) desde un navegador web como Brave o Edge
- Haga clic en el icono en la esquina superior derecha de la interfaz (o navegue a través del menú lateral izquierdo, por ejemplo)
- Elija Servidor Cloud (universo Web & Dominio)
- Haga clic directamente en el nombre del objeto en cuestión en la tabla que se muestra
- Haga clic en Instalador rápido en el menú lateral izquierdo
- Haga clic en el icono ⋮ a la derecha de HAProxy
- Haga clic en Configurar
- Ingrese la información deseada:
Obtener la IP de origen de una solicitud
Cuando redirige el tráfico web a su aplicación web, el procesamiento de las solicitudes cambia y la solicitud es recibida primero por un proxy inverso (local en el servidor) que luego la reenvía al puerto seleccionado. Por lo tanto, debido al reenvío de la solicitud, los métodos que normalmente recuperan la IP del visitante devolverán la IP del proxy inverso en lugar de la del visitante.
Por lo tanto, para recuperar la IP de origen real del visitante en estos casos, debe consultar un encabezado HTTP llamado X-Forwarded-For
, que contendrá las IPs de origen acumuladas en cada reenvío. Este encabezado contendrá, por lo tanto, en último lugar la dirección IP original del cliente, lo que le permitirá identificar al visitante real.
Atención: Es importante tener en cuenta que los encabezados HTTP pueden ser manipulados, lo que presenta riesgos de seguridad. Para minimizar estos riesgos, se recomienda verificar que la solicitud provenga realmente de un servidor confiable antes de confiar en el contenido del encabezado X-Forwarded-For
. Esta verificación puede implicar asegurarse de que la solicitud haya sido transmitida por un servidor intermedio confiable, identificado por una lista predefinida de direcciones IP. En caso de que el sitio utilice una IP dedicada, los servidores confiables son:
- 83.166.133.15
- 83.166.133.17
- 83.166.133.16
- 84.16.92.5
- 84.16.92.43
- 10.2.32.255
- 10.2.34.164