Secure Shell (SSH) es un protocolo de red utilizado para una conexión segura entre un cliente y un servidor. Cada interacción entre el servidor y un cliente está encriptada.
Este tutorial explica cómo habilitar SSH en una máquina Ubuntu.
Activar SSH te permitirá conectarte a tu sistema de forma remota y realizar tareas administrativas. También podrás transferir archivos de forma segura mediante scp y sftp.
Activar SSH en Ubuntu
Por defecto, cuando se instala Ubuntu por primera vez, no se permite el acceso remoto mediante SSH. Activar SSH en Ubuntu es bastante sencillo.
Realiza los siguientes pasos como root o usuario con privilegios sudo para instalar y habilitar SSH en tu sistema Ubuntu:
- Abre el terminal con
Ctrl+Alt+T
e instala el paqueteopenssh-server
:sudo apt updatesudo apt install openssh-server
Cuando se te pida, introduce tu contraseña y pulsa Intro para continuar con la instalación.
- Una vez completada la instalación, el servicio SSH se iniciará automáticamente. Puedes verificar que SSH se está ejecutando escribiendo.
sudo systemctl status ssh
La salida debería indicarte que el servicio se está ejecutando y está habilitado para iniciarse al arrancar el sistema:
ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2020-06-01 12:34:00 CEST; 9h ago ...
Pulsa
q
para volver a la línea de comandos. - Ubuntu incluye una herramienta de configuración del cortafuegos llamada UFW. Si el cortafuegos está activado en tu sistema, asegúrate de abrir el puerto SSH:
sudo ufw allow ssh
Y ya está. Ahora puedes conectarte a tu sistema Ubuntu mediante SSH desde cualquier máquina remota. Los sistemas Linux y macOS tienen clientes SSH instalados por defecto. Para conectarte desde una máquina Windows, utiliza un cliente SSH como PuTTY .
Conectar con el servidor SSH
Para conectarte a tu máquina Ubuntu a través de la LAN invoca el comando ssh seguido del nombre de usuario y la dirección IP con el siguiente formato
ssh username@ip_address
username
por el nombre de usuario real y ip_address
por la dirección IP de la máquina Ubuntu donde has instalado SSH.Si no conoces tu dirección IP puedes encontrarla fácilmente utilizando el comando ip :
ip a
Como puedes ver en la salida, la dirección IP del sistema es 10.0.2.15
.
Una vez que hayas encontrado la dirección IP, inicia sesión en la máquina remota ejecutando el siguiente comando ssh.
ssh linuxize@10.0.2.15
Cuando te conectes por primera vez, verás un mensaje como éste
The authenticity of host '10.0.2.15 (10.0.2.15)' can't be established. ECDSA key fingerprint is SHA256:Vybt22mVXuNuB5unE++yowF7lgA/9/2bLSiO3qmYWBY. Are you sure you want to continue connecting (yes/no)?
Escribe yes
y se te pedirá que introduzcas tu contraseña.
Warning: Permanently added '10.0.2.15' (ECDSA) to the list of known hosts. linuxize@10.0.2.15's password:
Una vez que introduzcas la contraseña, serás recibido con el mensaje predeterminado de Ubuntu:
Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-26-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
Ya has iniciado la sesión en tu máquina Ubuntu.
Conectarse a SSH detrás de NAT
Para conectarte a tu máquina Ubuntu doméstica a través de Internet necesitarás conocer su dirección IP pública y configurar tu router para que acepte datos en el puerto 22 y los envíe al sistema Ubuntu donde se está ejecutando el SSH.
Para determinar la dirección IP pública de la máquina a la que intentas acceder por SSH, simplemente visita la siguiente URL: https://api.ipify.org
.
Cuando se trata de configurar el reenvío de puertos, cada router tiene una forma diferente de configurar el reenvío de puertos. Debes consultar la documentación de tu router sobre cómo configurar el reenvío de puertos. En resumen, tienes que introducir el número de puerto en el que se harán las peticiones (el puerto SSH por defecto es el 22) y la dirección IP privada que encontraste antes (mediante el comando ip a) de la máquina donde se ejecuta el SSH.
Una vez que hayas encontrado la dirección IP y hayas configurado el router, puedes iniciar la sesión escribiendo
ssh username@public_ip_address
Si vas a exponer tu máquina a Internet, es una buena idea aplicar algunas medidas de seguridad. La más básica es configurar tu router para que acepte el tráfico SSH en un puerto no estándar y lo reenvíe al puerto 22 de la máquina que ejecuta el servicio SSH.
También puedes configurar una autenticación basada en una clave SSH y conectarte a tu máquina Ubuntu sin introducir una contraseña.
Desactivar SSH en Ubuntu
Para desactivar el servidor SSH en tu sistema Ubuntu, simplemente detén el servicio SSH ejecutando
sudo systemctl disable --now ssh
Más tarde, para volver a habilitarlo, escribe
sudo systemctl enable --now ssh
Conclusión
Te hemos mostrado cómo instalar y habilitar SSH en tu Ubuntu 20.04. Ahora puedes acceder a tu máquina y realizar las tareas cotidianas de administración del sistema a través del símbolo del sistema.
Si gestionas varios sistemas, puedes simplificar tu flujo de trabajo definiendo todas tus conexiones en el archivo de configuración SSH. Cambiar el puerto SSH por defecto añade una capa extra de seguridad a tu sistema, reduciendo el riesgo de ataques automáticos.
Para más información sobre cómo configurar tu servidor SSH, lee la guía SSH/OpenSSH/Configuración de Ubuntu y la página oficial del manual de SSH.
Si tienes alguna duda, deja un comentario a continuación.