¿Por qué no puedo acceder a mi instancia de Amazon EC2 a través de su dirección IP elástica?

37

El servidor funciona bien a través de la entrada DNS asignada por Amazon, pero no puedo acceder a él (usando un navegador) a través de la dirección IP elástica que Amazon asignó a la caja. Ping tampoco funciona. Estoy tratando de confirmar que es accesible antes de agregar la dirección IP a mis propias entradas de DNS.

Guido Anselmi
fuente
1
¿Estás seguro de que estás usando tu IP elástica y no tu IP privada y local?
@Robert - Hola, bueno, la dirección de aws. *** no se buscará a través de ping, (pero funciona en el navegador), así que no sé cómo averiguarlo. Intenté hacer ping y probé algunos sitios de Internet que realizan búsquedas.
@Piotr - Sí. Es la "Dirección IP elástica", no la Dirección IP privada. Amazon también lo utiliza en el encabezado de las pestañas de estado.
Guido, ¿tiene asignado un DNS público y una ID de instancia?
@Piotr: Sí. Y el DNS público es accesible a través de un navegador. Actualmente estoy trabajando detrás de un firewall, no estoy seguro si eso afectará ..... solo intenté hacer ping a un sitio conocido (msn.com) y eso falló. Anclando mi teléfono ...
Guido Anselmi

Respuestas:

37

Cosas para verificar:

  • ¿Tu IP elástica asociada con tu instancia?
  • ¿Su grupo de seguridad de instancia permite conexiones entrantes?
  • ¿Su firewall de instancia permite conexiones entrantes?
  • ¿Tu aplicación escucha?
Piedra
fuente
Fue un grupo de seguridad para mí, ¡gracias! Nunca mencionaron esto en ningún tutorial de AWS. :(
emotality
1
Otra cosa para verificar: intente reiniciar la instancia EC2. Esto me sirvió (la IP elástica se asoció con la instancia mientras se estaba ejecutando).
nedned
Para mí también fue reiniciar la instancia, ¡funcionó mágicamente!
Artipixel
Tengo el mismo problema que OP. Verifiqué los puntos 1, 2 y 4 en la respuesta, también reinicié la instancia EC2. ¿Cómo verifico el tercer punto "Su firewall de instancia permite conexiones entrantes"? ¿Las conexiones entrantes no están permitidas por el firewall de instancia EC2?
Indominus
26

Como otros mencionaron, el grupo de seguridad para su instancia EC2 puede no permitir el puerto HTTP.

Primero, encuentre el grupo de seguridad que usa su instancia.

ingrese la descripción de la imagen aquí

Luego, en Red y seguridad, vaya a la sección Grupos de seguridad . Seleccione el grupo de seguridad de su instancia y agregue una regla TCP de entrada personalizada para el rango de puertos 80.

Grupos de seguridad en EC2

James Lawruk
fuente
2
La primera respuesta adecuada: muchas gracias.
Arthur Kushman
2
Prefiero aceptar esta respuesta, porque AWS EC2 realmente crea una instancia sin abrir el puerto 80 para las conexiones TCP de forma predeterminada.
Arthur Kushman
Respuesta mucho mejor que la respuesta de Stone. Esta respuesta (de James) debe aceptarse como respuesta correcta porque es una respuesta real. La respuesta de Stone es demasiado genérica, es decir. Cosas para comprobar!
Kannas
Funcionó para mí ... Acabo de agregar una regla TCP personalizada con PORT: 80 ... Gracias
Muhammad Azeem
Ohh, esto fue todo! Me ha estado volviendo loco por horas. Creé un nuevo grupo de seguridad con todos los enlaces correctos. Se revisó el firewall en la instancia, se verificó si el servicio web se está ejecutando o no y las configuraciones de seguridad de VPC. ¡Pero resultó que la Instancia estaba usando un Grupo de Seguridad completamente diferente llamado "launch-wizard-1"!
Zolbayar
16

Asegúrese también de que la tabla de ruta de VPC esté configurada para permitir que la dirección IP fuera de la VPC (0.0.0.0/0) fluya desde la subred a la puerta de enlace de Internet.

Navegue a VPC> Tablas de ruta; Pestaña de ruta. Verifique que el destino esté "asignado" al Id. De puerta de enlace de Internet de destino (aparte del local).

G Seth
fuente
Siguiendo las instrucciones anteriores, agregué una ruta predeterminada utilizando la puerta de enlace de Internet como objetivo. Para especificar la ruta predeterminada, coloque 0.0.0.0/0 como destino. Una vez hecho esto, pude llegar a mi instancia desde Internet utilizando su dirección IP pública
Peter Smallwood,
Esto funciona para mi. Pero tengo curiosidad por saber que antes de configurarlo de esta manera, ya tenía otra instancia existente accesible desde Internet. ¿Por qué no puede esta vez?
Shintaroid
10

Simplemente agregue esta respuesta, ya que podría ayudar a otros novatos de EC2. Si el DNS público para su instancia EC2 es: DNS público: ec2-46-137-53-149.eu-west-1.compute.amazonaws.com , puede acceder a la instancia utilizando la parte numérica de la Dirección DNS. En el caso anterior http://46.137.53.149/

Obviamente, deberá tener abierto el puerto TCP correspondiente en el grupo / perfil de seguridad asociado con su instancia como se mencionó anteriormente.

La IP privada (por ejemplo, 10.235.47.101) no es accesible desde fuera de la red de AWS y solo es útil cuando tiene un clúster de nodos EC2 y desea una comunicación más rápida entre ellos.

nelsonic
fuente
5

Un par de preguntas: ¿a qué puerto estás intentando acceder? ¿Tiene ese puerto abierto en los grupos de seguridad? ¿Tiene una aplicación escuchando en ese puerto?

Si tuviera que adivinar sus grupos de seguridad no están configurados correctamente. Asegúrese de abrirlos a las direcciones IP correctas o al mundo (0.0.0.0/0) si va a acceder a ese puerto desde múltiples IP.

Si no es todo eso, disocia y reasigna la IP a la instancia.

chantheman
fuente
@ Chan-da-man- Sí, los puertos están abiertos y hay una aplicación escuchando. Exactamente la misma URL, excepto el nombre de dominio intercambiado con IP.
Guido Anselmi
Cuando haces ping al cname completo de Amazon, ¿vuelve con la IP elástica?
chantheman