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 se refiere a la redirección del tráfico web a un puerto específico, incluso en caso de uso de una IP dedicada y de una aplicación web específica (como Node o Varnish p.ex).
Requisitos previos
- Instalar HAProxy en el Servidor Cloud.
Redirigir el tráfico web a un puerto específico
Por defecto, en Servidor Cloud, el tráfico web se envía a Apache. Para enviar las consultas a un script Node u otro servicio (siempre que "escucha" en un puerto entre 4000 y 4009), hay que pasar por HAProxy.
Esto se aplica especialmente a los servidores Express, Socket. IO, Meteor.js, Nuxt.js, Django, Flask, Ruby on Rails, incluso eventualmente Java (J2E), etc.
Para ello, es necesario asegurarse de que el servicio escucha bien en un puerto entre 4000 y 4009 (especialmente con server.listen(4000)
para Express o un servidor HTTP Node básico, pero dependiendo del tipo de proyecto por otros medios, un archivo de configuración, en el código u otro) y en todas las interfaces (0.0.0.0).
También será necesario configurar HAProxy como en el ejemplo siguiente:
- Haga clic aquí para acceder a la gestión de su producto en el Manager Infomaniak (¿Necesitas ayuda?).
- Haga clic directamente en el nombreasignado al producto afectado.
- Haga clic en Fast installation en el menú lateral izquierdo.
- Haga clic en el menú de acción ⋮ situado a la derecha de HAProxy.
- Haga clic en Configurar:
- Elija la información deseada y guarde:
Recuperación de IP fuente de una consulta
Al redirigir el tráfico web a su aplicación web, el procesamiento de las peticiones cambia y la consulta es recibida primero por una reverse proxy (local al servidor) que luego transfiere la consulta al puerto seleccionado. Por lo tanto, debido a la transferencia de la petición, los métodos que por lo general permiten la recuperación de la IPTF del visitante darán la IPTF del reverse proxyen lugar de la del visitante.
Por lo tanto, para recuperar el IP fuente real del visitante en estos casos, hay que consultar a un header HTTP llamado X-Forwarded-For
, que contendrá las IPs de origen acumuladas en cada redirección. Por lo tanto, este header contendrá en última instancia la dirección IP original del cliente, que permite identificar al visitante real.
Atención: Es importante señalar que los headers HTTP pueden ser manipulados, lo que plantea riesgos de seguridad. Para minimizar estos riesgos, se recomienda comprobar si la petición procede de un servidor fiable antes de confiar en el contenido del header X-Forwarded-For
Esta verificación puede implicar asegurarse de que la solicitud ha sido transmitida por un servidor intermedio de confianza, identificado por una lista predefinida de direcciones IP. En caso de que el sitio utiliza una IP dedicada, los servidores de confianza 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