Cómo ssh en su invitado de virtualbox

Cómo ssh en su invitado de virtualbox
Hay momentos en los que desea tener un acceso remoto a su VM. Tal vez, es solo un sistema operativo de servidor que se ejecuta como VM, donde prueba sus aplicaciones antes de implementarlas.

Tener la capacidad de SSH en su sistema operativo invitado puede ser útil cuando no desea usar la GUI de su máquina virtual. Simplemente comience a su VM en modo sin cabeza y SSH entre y salga sin tener múltiples ventanas abiertas en su terminal.

Para aquellos que son nuevos en la idea de SSH, tendremos una breve introducción al funcionamiento de SSH antes de sumergirse en la configuración. También tendríamos que discutir la configuración relacionada con la red de su VM para asegurarnos de que tenga acceso a esa VM desde cualquier lugar de su LAN.

Cómo funciona SSH-Keys?

Aquí está el modelo simplificado de cómo funciona SSH. Creas un par de claves en tu computadora local. Una clave pública y una clave privada. Los mensajes encriptados con la clave pública se pueden descifrar utilizando la clave privada y viceversa. Estas claves generalmente se almacenan en su computadora local en una ruta ~/.ssh/id_rsa(clave privada) y~/.ssh/id_rsa.pem(la clave pública).

Luego va a su servidor remoto, inicie sesión en una consola como usuario normal o root, abra el archivo ~/.ssh/autorized_keysde ese servidor. Aquí ingresa el contenido de su clave pública como está. Una vez hecho esto, puede ssh como ese usuario en el servidor cuyo .El directorio SSH tiene los Keeys autorizados, desde su dispositivo local.

El .pem La extensión significa que ese archivo es la clave pública que puede compartir con cualquier persona. El ID_RSA parte Solo significa qué cifrado se está utilizando (en este caso es RSA). La clave privada puede estar protegida por una frase de pases que tendría que ingresar, cada vez que desee iniciar sesión en un servidor remoto utilizando esa clave privada.

Si tiene un sistema Mac, Linux o cualquier otro sistema similar a UNIX como su computadora local, puede generar y administrar claves utilizando terminal, y también puede SSH en servidores remotos utilizando el mismo terminal. Para los usuarios de Windows, sugeriría usar masilla o git bash este último es mi preferencia personal. Los comandos son más o menos los mismos una vez que tienes un cliente SSH.

Configuración de ssh-keys

Primero asegúrese, si ya no hay keys SSH en su directorio de casa. Verifique el contenido de su directorio de hogar .ssh carpeta. En caso de duda, haga una copia de seguridad de su contenido antes de ejecutar el siguiente comando. Programas como Filezilla usan claves SSH todo el tiempo, sin el conocimiento del usuario para que este paso sea bastante crucial.

En tus máquina local, Abra el terminal e ingrese el comando:

$ ssh-keygen

Esto será seguido por las siguientes indicaciones con valores en el grupo que indican los valores predeterminados. Continúe con las indicaciones y le dé a sus claves una frase segura.

Verifique que las claves se creen revisando el contenido de su ~/.ssh carpeta.

$ ls -al ~/.ssh

Si ve archivos que coinciden con los valores predeterminados que se muestran en el ssh-keygen rápido entonces todo ha funcionado bien.

Ahora abra una consola a su Máquina virtual. Primero verifique si su VM tiene un servidor SSH en ejecución o no.

$ Servicio SSHD Estado

Si no está instalado, use su Administrador de paquetes para buscar e instalar el servidor OpenSSH. Una vez hecho, asegúrese de que el firewall de su VM esté abierto en el puerto número 22. Por ejemplo, si está utilizando Ubuntu como VM, el firewall predeterminado UFW debe deshabilitarse o permitir conexiones del puerto 22 como así:

$ sudo UFW estado

Si no está abierto en el puerto 22, use el comando Seguir:

$ sudo UFW Permitir SSH

Luego abra el archivo ~/.ssh/autorized_keys En tu VM, usando tu editor de texto favorito. Es posible que desee habilitar el portapapeles de host-to-guest o bidireccional para este siguiente paso.

Dentro de este archivo (en la parte inferior del archivo, si no está vacío) pegue el contenido de su Llave pública. La última parte donde dice su nombre y el anfitrión local donde se generaron las teclas no es tan importante como el resto de la cadena.

(Opcional) No usa keys ssh

Si confía en su red local, puede usar el método menos seguro para usar su contraseña Unix, para SSH en su VM. Abra el archivo /etc/ssh/sshd_config En su VM y reemplaza la línea:

#Passwordauthentication no
A
Contraseña Autenticación Sí

Una vez que esté en su lugar, reinicie su servidor SSH.

$ servicio sshd reiniciar

Ahora puede usar la contraseña regular que usa para iniciar sesión en su VM para SSH también.

Su máquina virtual y red

Para que usted ssh en su VM, tanto su computadora local (la que tiene la clave privada) como la VM deberían estar en la misma red. Para que pueda llegar a la dirección IP de esa VM. Le mostraremos cómo agregar la VM a su LAN.

Consideremos el ejemplo de una configuración típica del enrutador de origen. Su computadora, junto con otros dispositivos, está conectada al enrutador de inicio. Este enrutador también actúa como un servidor DHCP, lo que significa que asigna cada dispositivo que está conectado a él, una dirección IP privada única. Su escritorio obtiene una IP, también lo hace su teléfono y su computadora portátil. Solo los dispositivos que están conectados a este enrutador pueden hablar entre sí a través de sus direcciones IP.

Habilitar el modo de red puenteado en la configuración de su VM y la VM aparecerá como conectada a su enrutador de inicio (o un servidor DHCP similar) con una IP privada. Si un segundo dispositivo está conectado a la misma red (por ejemplo, al mismo enrutador de inicio), entonces se puede usar para SSH en la VM.

Abra VirtualBox Manager, seleccione su VM de destino, abra el Configuración → Red y seleccione Networking de Bridge en lugar de Nat.

Como puede ver, mi host está conectado usando la inalámbrica para que la conexión también sea compartida por la VM, si está utilizando Ethernet, se mostraría un nombre de interfaz diferente, lo cual está bien.

Ahora, mi VM, que se llama ubuntuvm, Aparece en mi configuración de LAN como lo siguiente. Verifique la configuración de su enrutador para ver si lo mismo funciona para usted.

Una vez que conozca la dirección IP de su VM, puede ssh en ella ejecutando el comando:

$ ssh @ip.DIRECCIÓN.de.su.VM

Si ha puesto una frase de pases para su clave privada en los pasos anteriores, se le pedirá que lo vuelva a ingresar.

Eso es todo! Ahora puede comenzar sus máquinas virtuales en modo sin cabeza y simplemente ssh en ellos desde cualquier lugar de su casa. Espero que haya encontrado este tutorial interesante, háganos saber si hay algún tema que quiera que cubramos.