La conexión remota a máquinas virtuales es una habilidad esencial para todo administrador de sistemas que se precie. Y si eres de los que trabaja con Ubuntu en VirtualBox, seguro que te has preguntado cómo acceder a tu máquina virtual desde fuera. No te preocupes, porque en este artículo vamos a desgranar paso a paso cómo configurar el acceso SSH a tu Ubuntu virtualizado.
Antes de lanzarnos a configurar el acceso SSH, necesitamos tener algunas cosas listas. Lo primero es asegurarte de que tienes VirtualBox instalado en tu equipo anfitrión y una máquina virtual con Ubuntu funcionando correctamente.
También es crucial que tu Ubuntu tenga el servidor SSH instalado. Si no lo has hecho ya, abre una terminal en tu máquina virtual y ejecuta:
sudo apt update && sudo apt install openssh-server
Este comando actualizará los repositorios e instalará el servidor SSH en un solo paso. Fácil, ¿verdad?
Ahora viene la parte interesante. Para que tu máquina host pueda comunicarse con la virtual, necesitamos configurar la red en VirtualBox. Sigue estos pasos:
- Apaga tu máquina virtual si está en funcionamiento.
- En VirtualBox, selecciona tu máquina Ubuntu y haz clic en «Configuración».
- Ve a la pestaña «Red».
- En «Adaptador 1», elige «NAT» como modo de red.
- Haz clic en «Reenvío de puertos».
En la ventana de reenvío de puertos, añade una nueva regla con estos datos:
– Nombre: SSH
– Protocolo: TCP
– Puerto anfitrión: 2222 (puedes elegir otro si este está ocupado)
– IP invitado: déjalo en blanco
– Puerto invitado: 22
Esta configuración permitirá que las conexiones al puerto 2222 de tu máquina host se redirijan al puerto 22 (el puerto SSH por defecto) de tu máquina virtual.
Es hora de poner todo en marcha. Inicia tu máquina virtual Ubuntu y, una vez que haya arrancado completamente, abre una terminal en tu máquina host.
Para conectarte por SSH, utiliza el siguiente comando:
ssh -p 2222 tuusuario@localhost
Sustituye «tuusuario» por el nombre de usuario que tengas en tu Ubuntu virtual. Te pedirá la contraseña de ese usuario. Si todo va bien, ¡estarás dentro!
Ahora que ya puedes acceder, vamos a dar un paso más allá en la seguridad de tu conexión SSH. La autenticación por clave es mucho más segura que usar solo contraseña. Aquí te explico cómo configurarla:
En tu máquina host, genera un par de claves SSH con:
ssh-keygen -t rsa -b 4096
Sigue las instrucciones en pantalla. Puedes dejar la passphrase en blanco si quieres, aunque añadirla proporciona una capa extra de seguridad.
Ahora, copia tu clave pública a la máquina virtual:
ssh-copy-id -p 2222 tuusuario@localhost
Introduce la contraseña cuando te la pida. ¡Y listo! Ya puedes conectarte sin necesidad de introducir la contraseña cada vez.
Para hacer tu vida más fácil, puedes crear un alias en tu máquina host. Edita el archivo ~/.ssh/config
y añade estas líneas:
Host ubuntuvm
HostName localhost
Port 2222
User tuusuario
IdentityFile ~/.ssh/id_rsa
Ahora podrás conectarte simplemente escribiendo:
ssh ubuntuvm
Trucos para sacar el máximo partido a tu conexión SSH
Ya tienes tu conexión SSH funcionando, pero ¿por qué conformarse con lo básico? Aquí tienes algunos trucos avanzados para llevar tu experiencia al siguiente nivel:
- Túneles SSH: Puedes usar SSH para crear túneles seguros y acceder a servicios que normalmente no estarían disponibles desde fuera de tu red.
- X11 Forwarding: Si necesitas ejecutar aplicaciones gráficas, activa el reenvío X11 con la opción -X al conectarte.
- Mantén viva la conexión: Añade «ServerAliveInterval 60» a tu archivo de configuración SSH para evitar desconexiones por inactividad.
Con estos pasos y trucos, ahora tienes un acceso remoto seguro y eficiente a tu máquina virtual Ubuntu en VirtualBox. Ya sea que estés gestionando servidores, desarrollando software o simplemente experimentando, esta configuración te permitirá trabajar de forma flexible y segura. ¡Disfruta de tu nueva libertad para acceder a tu entorno Ubuntu desde cualquier lugar!