Internet, Informática y Tecnología

Conexión por SSH a máquina en Vagrant con PuTTY o Terminus

vagrant logo

Cuando recién empecé a usar Vagrant todo pintaba muy bien, ya que prácticamente solo estamos usando VirtualBox pero de forma automatizada. Lo primero justo después de crear mi primera máquina fueron problemas al conectarme por SSH, porque no entendía cómo se gestiona el uso de las llaves SSH, ya que era bastante automático y con escasa configuración por defecto. Pero a pesar de mi falta de conocimiento noté que todo lo demás era extremadamente fácil de configurar y replicar los entornos de desarrollo.

vagrant logo

Primeros pasos

Después de ejecutar el comando más importante de todos vagrant up y de esperar a que termine la ejecución, tomamos nota de la ubicación de la máquina o mantenemos la ruta de PowerShell o de la terminal que usemos para iniciar la máquina.

powershell vagrant up

La imagen anterior es únicamente una referencia porque contiene algunas configuraciones personales que se ejecutan al inicio.

Ejecutamos el comando vagrant ssh-config para obtener los datos básicos de la conexión.

powershell vagrant ssh-config

Hay que tomar nota de los siguientes datos:

  • Hostname: Dirección IP, normalmente es "127.0.0.1".
  • User: El usuario por defecto es "vagrant".
  • Port: Puerto SSH, que casi siempre es "2222".
  • IdentityFile: Por último, y no menos importante, el archivo llave que necesitaremos para entrar, normalmente se llama "vagrant_private_key".

Para conectarnos con PuTTY

Primero hay que descargar "puttygen.exe" de esta página para convertir la llave privada de "IdentityFile" en una llave privada de PuTTY (.ppk). Usamos "Load" pero tenemos que seleccionar "All Files" en el filtro del explorador de archivos de Windows para que podamos seleccionar la llave y luego guardamos con "Save private key".

puttygen loaded

Ahora con PuTTY que también se puede descargar de la misma página que "puttygen.exe", empezamos a escribir en la primera ventana la IP y el puerto en lo que es la sección de "Session". Después nos vamos a "Connection" > "SSH" > "Auth", ahí en "Private key file for authentication" seleccionamos el archivo que anteriormente generamos con puttygen y el archivo de "IdentityFile". Hacemos clic en "Open" y escribimos el usuario por defecto "vagrant" o el que obtuvimos de "ssh-config" en los pasos anteriores.

putty-configputty connected vagrant

Para conectarnos con Terminus

En este caso es más fácil porque no tenemos que convertir la llave privada, solo nos dirigimos al icono en forma de globo de "SSH connections" > "Manage connections" > "Add connection".

Capturamos los siguientes datos, equivalentes del resultado de "ssh-config" entre paréntesis:

  • Name: Colocamos cualquier identificador a nuestro gusto
  • Host: Escribimos la dirección IP (HostName)
  • Port: Copiamos el puerto aquí (Port)
  • Username: Colocamos "vagrant" o el usuario arrojado en el paso en el que obtuvimos los datos de "ssh-config" (User)
  • Private key: Archivo llave, seleccionamos directamente el archivo (IdentityFile)

Luego hacemos clic en "Save" para guardar.

terminus vagrant config

Solo queda conectarnos desde "SSH connections" y listo.

terminus vagrant conectado

Al principio es un poco complicado, pero el uso de Vagrant nos ayuda a tener un entorno de desarrollo virtualizado, aislado y lo más parecido posible a la etapa de producción de nuestro software o aplicaciones. 

Contenido relacionado