Ok. Vamos a suponer que acabamos de crear un servidor al cual podemos entrar usando las credenciales establecidas en el momento de su creacion.
Para este ejemplo pensemos en que podemos entrar al server recien creado con el usuario “gerente” y el password “entrada”.
Lo que queremos es invalidar el ingreso al server via usuario/clave y usar sólo una llave.

Para esto, lo primero es ingresar al servidor de la manera usual y ejecutar el siguiente comando:

ssh-keygen -t rsa -b 2048 -v

ingresar el nombre de: my-key (y no poner password)
Se han creado dos archivos: my-key.pub y my-key sin extensión.
Ahora, ejecutar:

ssh-copy-id -i my-key gerente@localhost

aceptar la pregunta de “Are you sure you want to continue connecting (yes/no)?”
capturar el password y dar enter.
El sistema nos indicará lo siguiente:

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'gerente@localhost'"
and check to make sure that only the key(s) you wanted were added.

si efectuamos: cat my-key
podremos ver el texto asociado a la llave que nos servirá para conectarnos a este server.
Hay que copiar ese texto y compartirlo con quien desea conectar con este server.

Ahora, en otra máquina, hemos creado un archivo llamado local.pem con el texto dado
y adicionalmente, hemos creado un archivo ~/.ssh/config con el siguiente contenido:

Host *
    User                   goose
    StrictHostKeyChecking  no
    IdentityFile          ~/.ssh/id_rsa.pub

(obviamente asumo que existe el archivo id_rsa.pub creado con: ssh-keygen -t rsa)

Ahora ejecutamos el siguiente comando:

ssh -i local.pem gerente@192.168.221.129

y podemos ver que inmediatamente nos ingresa sin preguntar absolutamente nada mas !!!
(en parte gracias al archivo “~/.ssh/config”)

Ya solo resta inhabilitar el acceso a root via ssh y ponerle el password mas complejo del universo al usuario “gerente”

Cheers,
Goose

PD

Si se desea acceder al server remoto inclusive sin el pem, lo que podemos hacer es lo siguiente:

cat ~/.ssh/id_rsa.pub | ssh -i local.pem gerente@192.168.221.129 "mkdir -p ~/.ssh && cat >>  ~/.ssh/authorized_keys"
© 2017 Goose Workshop Suffusion theme by Sayontan Sinha