es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Google Cloud expone la aplicación después de SSH.

Tengo una aplicación web corriendo en un servidor privado. Uso el tunelamiento de puerto ssh para mapear el puerto del servidor privado al puerto 8080 de una máquina virtual de Google Cloud, y cuando ejecuto
curl http://localhost:8080
en la terminal de la máquina virtual de GCP, devuelve una respuesta válida. Sin embargo, cuando intento acceder a ella desde fuera (en un navegador) usando la dirección IP externa (o ejecutando curl http://[external_IP]:8080 en la terminal), devuelve “la dirección IP se negó a conectar”.

La configuración de mi cortafuegos permite el tráfico TCP en el puerto 8080, de manera que cuando ejecuto otra aplicación directamente en la máquina virtual en el puerto 8080 sin ssh (digamos una aplicación de “hello-world” en Docker), es accesible desde el exterior usando el mismo enlace y funciona bien. ¿Hay alguna configuración adicional que deba hacer?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Sí, puede ser necesario realizar una configuración adicional para que su aplicación web sea accesible desde fuera mediante la IP externa.

    Aquí tiene algunas cosas que puede comprobar:

    1. Compruebe si su aplicación web está vinculada a la dirección IP y el puerto correctos. Puede hacerlo ejecutando el comando netstat -tulpn en el servidor privado y asegurándose de que su aplicación web esté escuchando en la dirección IP y el puerto correctos.

    2. Compruebe si su túnel SSH está reenviando el tráfico correctamente. Puede hacerlo ejecutando el comando sudo tcpdump -i eth0 tcp port 8080 en la VM de GCP y luego accediendo a su aplicación web desde fuera. Si ve tráfico entrante en la interfaz de la VM de GCP, entonces su túnel SSH está funcionando correctamente.

    3. Compruebe si hay alguna restricción de red en el firewall de GCP que impida que el tráfico llegue a la VM. Además de permitir el tráfico TCP en el puerto 8080, es posible que también necesite permitir el tráfico desde la dirección IP externa.

    4. Compruebe si su aplicación web se está ejecutando en la interfaz correcta. Si su aplicación web está escuchando en la interfaz de bucle local (127.0.0.1) en lugar de la interfaz externa, solo será accesible desde la máquina local.

    5. Por último, asegúrese de que su aplicación web esté configurada para manejar el tráfico entrante desde fuentes externas. Algunos marcos o aplicaciones web pueden estar configurados para manejar solo solicitudes desde localhost o un rango de direcciones IP específico. Asegúrese de que su aplicación web esté configurada para aceptar solicitudes entrantes desde cualquier dirección IP.

Comments are closed.