Skip to content

1.3.Conectarse a una instancia de EC2 desde Windows

Erick Palacios Moreno edited this page Sep 2, 2021 · 1 revision

Lo siguiente fue realizado por José Luis Roberto Zárate Cortés jlrzarcor, muchas gracias 😃

Conectar una máquina local Windows a una Instancia Linux.

Lo siguiente es una adpatación al contenido en la página de AWS: Connecting to your Linux instance from Windows using PuTTY

Para realizar esta conexión se requiere utilizar PuTTY, un cliente SSH para Windows. Este software fue desarrollado y es mantenido principalmente por Simon Tatham, es open source y está licenciado bajo la Licencia MIT.

SSH (Secure SHell) es el nombre de un protocolo y del programa que lo implementa cuya principal función es el acceso remoto a un servidor por medio de un canal seguro en el que toda la información está cifrada. El puerto TCP asignado es el 22. (para conocer más ir a Wikipedia)


Prerrequisitos

Previo a conectar una instancia Linux usando PuTTY, se requiere completar los siguientes requisitos:

  • Validar que la instancia está lista
    Validar en la página de 'Instancias' (Instances), columna "Comprobaciones de Estado" (Status Check), que la instancia a conectar ha superado tales comprobaciones (puede tomar algunos minutos).

  • Revisar: nombre del DNS Público, dirección IP y nombre de usuario, requeridos para conectar la instancia

  • Intalar o actualizar a la última versión de PuTTY en la máquina local. PuTTY download page, (instalar "entire suite").

  • Convertir la clave privada (par de claves o Key Pairs) en caso de que el formato sea ".pem" a ".ppk" utilizando PuTTYgen

PuTTY no admite de forma nativa el formato de las claves privadas para SSH, por lo que provee una herramienta denominada PuTTYgen, la cual convierte las claves al formato requerido por PuTTY.

  1. En el Menu Inicio de Windows, en la carpeta PuTTY ejecutar la herramienta PuTTYgen. -->
  2. En la categoría Type of key to generate, seleccionar RSA o SSH-2 RSA para versiones anteriores de PuTTYgen.
  1. Presione Load. Por default, PuTTYgen despliega unicamente los archivos con extensión .ppk. Para localizar el archivo .pem, seleccionar la opción "All Files (.)", que se localiza a la derecha del recuadro de "File Name".
  1. Seleccionar el archivo .pem del par de claves (key pairs) especificado al momento de lanzar la instancia y presionar Open. PuTTYgen notifica que el archivo .pem se ha importado satisfactoriamente. Presionar OK.
  2. Gaurde la llave con el nuevo formato presionando Save private key. PuTTYgen despliega una advertencia acerca de guardar la clave sin una "passphrase", lo cual puede omitirse, presione Yes.

Nota: Una "passphrase" en una clave privada ("key pair") es un nivel adicional de seguridad; aún cuando sea descubierta la clave privada no se podría utilizar sin la "passphrase". No obstante, dificulta la automatización debido a que requiere la intervención humana para conectarse o copiar archivos a la instancia.

  1. Especifique el mismo nombre de la clave uitlizado para la "key-pair" y guarde. PuTTY automáticamente agrega la extensión .ppk.

Conectando a la Instancia Linux...

Para conectar una máquina local Windows a una instancia Linux se utiliza PuTTY, lo cual requiere utilizar un archivo .ppk. En el AWS es posible crear el par de claves ("key pairs") en formatos .pem y .ppk; la idea es generarlas desde un inicio como .ppk. No obstante, cuando se requiere utilizar una "key-pair" la cual ya está en formato .pem, debe ser convertida previamente a .ppk de acuerdo a los descrito en el último bullet de los "Prerrequisitos" en la sección anterior. En caso de recibir un error al tratar de conectar a una instancia, ver Troubleshooting Connecting to Your Instance.

Conectar a la instancia usando PuTTY:

  1. En el Menu Inicio de Windows, en la carpeta PuTTY ejecutar PuTTY (ver primer imágen de los Prerrequisitos).

  2. En el panel Category, seleccionar Session y llenar los siguientes campos:

a. Host Name box:

  • (Public DNS) Indicamos el nombre DNS público de nuestra instancia, el cual se puede localizar de varias formas en la página de la instancia a conectar en el AWS, por ejemplo, debajo del listado de instancias en el tablero de descripción -> pestaña "Detalles" o en el botón "Acciones" --> "Conectar" --> "Cliente SSH". La estructura tiene la siguiente forma: my-instance-user-name@my-instance-public-dns-name (en caso del usuario "root" es posible omitir my-instance-user-name@).

  • (IPv6) Alternativamente, si la instancia tiene una dirección IPv6, se debe ingresar my-instance-user-name@my-instance-IPv6-address.

Para mayor información acerca de cómo obtener el nombre de usuario de una instancia, el nombre del DNS público o la dirección IPv6, ver Get information about your instance.

b. Validar que el valor de puerto Port es 22.

c. En Connection Type, seleccionar SSH.

  1. (Opcional) Puedes configurar PuTTY para que automáticamente envíe datos 'keepalive' en intervalos regulares para mantener la sesión activa. Con esto se evita desconexiones de la instancia derivadas de inactividad. En el panel Category, seleccionar Connection e ingresar el intervalo requerido en el campo Seconds between keepalives.

  2. En el panel Category, expandir Connection, expandir SSH y seleccionar Auth. LLenar lo siguiente:

a. Click en Browse para accesar al directorio en el que se encuentra su archivo.

b. Seleccionar el archivo .ppk generado para el "key pair" y click en Open.

c. (Opcional) Si planeas reiniciar una sesión posterioremente, puedes guardar la información de sesión para usarla en el futuro. En Category, click en Session, ingresar el nombre de la sesión en Saved Sessions y click en Save.

d. Click en Open.

  1. Si es la primera vez que te conectas a la instancia, PuTTY mostrará un cuadro de diálogo con una alerta de seguridad que pregunta si confías en el 'host' al que te estás conectando.

    a. (Opcional) Validar que el 'fingerprint' en el cuadro de diálogo de la alerta de seguridad coincide con el 'fingerprint' que previamente obtienes en (Optional) Get the instance fingerprint . En caso de que los 'fingerprint' no coincidan, posiblemente alguien está intentando un ataque del tipo "man-in-the-middle". Si coinciden, continúa con el siguiente paso.

    b. Click en Yes. Finalmente se abrirá una ventana con una terminal PuTTY ya conectada a la instancia.

    Nota:

    1. En caso de haber especificado una "passphrase" al convertir la clave privada a un formato PuTTY, deberás ingresarla al hacer log-in en la instancia.
    2. Pueden existir diversas causas comunes de error al intentar hacer log-in en la instancia recién creada; en caso de recibir un error al tratar de conectarse, ver Troubleshooting Connecting to Your Instance.