Asignando una nueva KeyPair en una instancia EC2 de Amazon Web Services

Esta es una forma sencilla de cambiar nuestra KeyPair por otra creada o bien asignar una nueva, en una instancia EC2 de Amazon Web Services, siempre y cuando se tenga acceso a esa instancia a la que se le va a signar la nueva key pair. Ahora bien, los pasos a seguir son:

1. Generar nuestra KeyPair: para ello, en nuestro dashboard EC2 de Amazon Web Services, vamos a la sección de "Network & Security" > "Key Pairs" y luego procedemos a crearla, localizamos el botón "Create Kay Pair", escribimos un nombre de identificación para la nueva KeyPair y procedemos a crearla. Se nos ofrecerá la opción para descargarla y almacenarla en nuestro computador, en mi caso la he llamado "new-keypair.pem" y la he ubicado en mi directorio personal.

2. Cambiamos los permisos de nuestra KeyPair generada por los de lectura/escritura:

~$ chmod 0600 ~/new-keypair.pem

3. Leemos la llave privada y mostramos la llave publica: ubicada la KeyPair en nuestro directorio personal, ejecutamos el siguiente comando que nos ayudara a mostrar la llave publica de la KeyPair generada:

~$ ssh-keygen -y -f ~/new-keypair.pem

o bien podemos almacenarla en un archivo:

~$ ssh-keygen -y -f ~/new-keypair.pem >> new-keypair.pub

El parámetro -y permite leer la llave privada y mostrar su llave publica, el parámetro -f permite indicar la ubicación del archivo a leer.

4. Pasamos a conectarnos a nuestra instancia EC2, para luego copiar el contenido que se encuentra dentro del archivo new-keypair.pub y colocar dentro del archivo "authorized_keys" que se encuentra en el directorio ".ssh" del usuario con el que te conectas a la instancia EC2, en mi caso es /home/ec2-user/.ssh/authorized_keys, con el comando cat mostramos el contenido del archivo:

~$ cat new-keypair.pub
ssh-rsa AAEAB3NmaC1yc2EAEAADAHABAFABAQC+N ...

Y copiamos ese contenido en el archivo authorized_keys de la instancia EC2, al final, deberíamos tener algo como:

ssh-rsa AAEAB3NmaC1yc2EAEAADAQABAAAVAQDFN ...
ssh-rsa AAEAB3NmaC1yc2EAEAADAHABAFABAQC+N ...

Esta ultima linea del archivo es la llave publica de la KeyPair que hemos generado para la instancia EC2 y que hemos almacenado en la new-keypair.pub. Por ultimo procedemos a conectarnos a nuestra instancia EC2 con la nueva KeyPair generada:

ssh -i new-keypair.pem -p22 ec2-user @ compute.amazonaws.com

De esta forma podemos asignarles tantas KeyPair queramos a nuestra instancia EC2.