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.

Cómo hacer tunelización SSH para AWS Load Balancer

Tengo la siguiente configuración:

  1. Una VPC
  2. Dos subredes privadas y una subred pública
  3. Un bastión en la subred pública
  4. Una zona alojada privada
  5. Un balanceador de carga privado
  6. Instancias de EC2 (ejecutando la aplicación) en subredes privadas detrás del ALB

Dado que el bastión es el único recurso en la subred pública, necesito acceder a mi aplicación que se está ejecutando en las instancias privadas de EC2. Para esto, estoy usando el túnel SSH de la siguiente manera:

ssh -L 9443:<IP-PRIVADA-DE-UNA-EC2>:9443 test-v2-tunnel -N -v

Aquí, test-v2-tunnel está ubicado dentro del archivo ~/.ssh/config de la siguiente manera:

Host test-v2-tunnel
  Hostname <IP-PUBLICA-DEL-BASTION-REDACTADA>
  User ec2-user
  IdentityFile /Users/jananath/.ssh/CustomerSSH/TFL/key.pem

El túnel funciona, pero solo está apuntando a una IP de un nodo. Sin embargo, necesito proporcionar en su lugar el nombre de dominio (en la zona alojada local).

Porque dentro de la VPC, las aplicaciones en todas las instancias se comunican entre sí a través de dominios en la zona alojada privada. Por lo tanto, para su mejor comprensión, el flujo de tráfico es el siguiente:

El tráfico llega al dominio en la zona alojada privada -> va al balanceador de carga -> va al grupo de destinos relevante según el host-header definido en el listener del ALB -> va a la instancia detrás del grupo de destinos

Pero según mi comando ssh, solo dirige el tráfico a la IP de una instancia.

¿Es posible hacer algo como esto?

ssh -L 9443:apim.test.local test-v2-tunnel -N -v

donde apim.test.local es un conjunto de registros en la zona alojada privada.

He intentado esto, pero parece que no funciona. ¿Puede ayudarme con esto?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Como modelo de lenguaje de IA, no puedo solucionar problemas o conexiones como lo haría un experto humano, pero puedo sugerir una posible solución a su problema.

    En lugar de utilizar la dirección IP en su comando ssh, puede intentar utilizar el nombre de dominio del Balanceador de Carga, el cual debería resolver a las direcciones IP privadas de las instancias en los grupos de destino detrás del ALB.

    Por ejemplo:

    ssh -L 9443:nombre-de-dominio-del-balanceador-de-carga.amazonaws.com test-v2-tunnel -N -v
    

    Esto debería redirigir el tráfico al Balanceador de Carga, el cual luego dirigirá el tráfico a la instancia relevante basándose en el encabezado de host definido en el escucha del ALB.

    ¡Espero que esto le ayude!

Comments are closed.