En el articulo de hoy vamos a explicar como proceder para autenticarnos en un equipo con Linux, mediante la extensión Remote SSH utilizando una pareja de claves SSH.

Como sabes, gracias a WSL y la extensión Remote SSH podemos conectarnos a un equipo Linux e interactuar con sus ficheros, desde el explorador y su terminal.

La extension Remote SSH, nos crea en nuestro directorio home, %USERPROFILE%\.ssh un fichero config y known_hosts, cuando nos conectamos a un equipo mediante usuario/contraseña. Vamos a partir de que esta configuración ya la hemos llevado a cabo previamente.

Requisitos:

Vale lo primero que haremos será crear una pareja de claves en nuestro home.

ssh-keygen -t rsa -b 4096 

Una vez le damos a enter, nos dice en qué localización queremos guardar las claves, por defecto se guardarían dentro de una carpeta .ssh en nuestro home de Windows. Le indicamos esta carpeta por defecto, que será donde lo busque el VSCode, así facilitaremos la tarea:

/mnt/c/Users/username/.ssh

Una vez le decimos la localización, podemos proteger la clave privada con una contraseña, pero en nuestro caso no lo haremos.

Si nos vamos a la localización anterior, vemos que ya tenemos la pareja de claves.

Ahora las queremos copiar, a la máquina que queremos gestionar desde nuestro VSCode, para ello la copiaremos desde nuestra propia distribución con SSH:

ssh-copy-id -i /mnt/c/users/vjrodilla/.ssh/id_rsa username@host

Una vez ejecutado, nos solicitará la contraseña del usuario indicado para aplicarle la clave.

Ya tendríamos nuestras claves preparadas para usarse.

Ahora nos vamos al VSCode, y presionamos Ctrl + Shift + P

Seleccionamos Remote-SSH: Open Configuration File

Una vez seleccionamos, le decimos que la ruta del fichero sera la de nuestro nombre de usuario/.ssh

Y rellenamos lo siguiente:

Host <FriendlyName> CentOS
  HostName <Host o IP> 192.168.10.100
  User username
  PreferredAuthentications publickey

  IdentityFile <Clave privada>"C:\Users\vjrodilla\.ssh\id_rsa"

He aclarado el concepto a lo que corresponde cada bloque dentro de <…> ese código hay que borrarlo antes de guardar el fichero, rellenamos con nuestros datos y guardamos.

Volvemos a seleccionaro Ctrl + Shift + P, y esta vez seleccionamos Connect to Host.

Si todo ha ido bien, nos saldrá el host configurado en el fichero anterior. Seleccionamos el host.

Confirmamos la huella o fingerprint que nos ofrece.

Puede ser que nos pregunte que tipo de OS nos estamos conectando si Linux, Mac o Windows, en este caso elegimos Linux.

Una vez conectados, ya podemos abrir el terminal, incluso añadir la carpeta «/» local:

Espero que os guste y os sea de utilidad!