En esta ocasión veremos cómo instalar SSH en Ubuntu 18.04 LTS Bionic Beaver paso a paso, de modo que al final de este tutorial podrás conectar remotamente desde cualquier dispositivo con un cliente SSH a tu servidor o VPS Ubuntu.
Contenido
Antes de instalar SSH en Ubuntu 18.04 LTS
Si quieres seguir esta breve guía de instalación de SSH en Ubuntu 18.04 LTS debes cumplir estos requerimientos:
- Un sistema Ubuntu 18.04 LTS Bionic Beaver actualizado.
- Acceso a línea de comandos con un usuario con privilegios de sudo.
- Conexión a Internet.
Seguro que cumples estos requisitos, así que podemos abrir una terminal y empezar con el trabajo.
Cómo instalar SSH en Ubuntu 18.04
Para instalar SSH en Ubuntu 18.04 utilizaremos paquetes procedentes de la propia distribución, así que el primer paso será el habitual en estos casos, actualizar las listas de paquetes:
~$ sudo apt update
Con las listas actualizadas puedes, de forma opcional, actualizar los paquetes ya instalados:
~$ sudo apt upgrade -y
Ahora podemos instalar el paquete necesario, el paquete ssh, mediante el comando apt:
~$ sudo apt install -y ssh
Tras descargar e instalar el paquete y sus dependencias se habrá creado un nuevo servicio en nuestra máquina Ubuntu 18.04, el servicio ssh.service, aunque también puedes usar el nombre corto, ssh.
Activar o habilitar el servicio SSH en Ubuntu 18.04
No hace falta activar o habilitar el servicio SSH para que inicie automáticamente con Ubuntu 18.04, ya que el instalador del paquete lo ha hecho ya. Igualmente, el servicio queda en ejecución tras la instalación.
Podemos comprobar el estado del servicio con el comando systemctl status ssh
:
Podemos comprobar que el servicio ssh está en ejecución, concretamente a la escucha en el puerto TCP 22, el puerto estándar del servicio.
Cómo instalar el cliente
Si has instalado el servicio, el cliente de consola ssh se instala como una de las dependencias, por lo que ya debes tenerlo en tu sistema Ubuntu 18.04.
Si no quieres instalar el servicio ya que sólo te interesa el cliente SSH para conectar con otros sistemas, viene incluido en las herramientas estándar del sistema.
Sigue leyendo y verás ejemplos de como usar el cliente ssh en Ubuntu 18.04.
Cómo comprobar el servicio SSH en Ubuntu 18.04
Hemos visto que el servicio SSH está en ejecución, pero si quieres probar su funcionamiento, puedes establecer una conexión local mediante el cliente ssh. Por ejemplo, para conectar al servicio con tu propia cuenta el único argumento que tendrías que proporcionar sería la dirección localhost o 127.0.0.1, usando el comando ssh localhost
:
Como puedes comprobar se inicia una nueva sesión idéntica a la de la consola normal.
Si tienes otro usuario del que conoces la contraseña, puedes iniciar una sesión SSH especificando esta vez su cuenta al conectar:
~$ ssh -l usuario localhost
Cómo conectar al servicio SSH desde otros sistemas
Si estás usando algún firewall en Ubuntu y quieres permitir conexiones remotas al servicio SSH, deberás crear una excepción, bien para el servicio SSH o bien para el puerto TCP 22, según cómo funcione tu firewall.
Para iniciar sesión remota en tu sistema Ubuntu 18.04 mediante SSH es necesario que a su vez el sistema desde el que quieres conectar tenga un cliente SSH.
Por ejemplo, desde otro sistema Linux usaríamos el cliente de consola ssh, especificando el usuario con el que queremos conectar y la dirección de nuestro sistema Ubuntu 18.04, algo similar a ssh -l chacho ubuntu64.local
:
Cómo conectar desde Windows a Ubuntu 18.04 mediante SSH
Las versiones más recientes de Microsoft Windows incluyen un cliente de consola SSH muy similar al que hemos visto hasta ahora. Sin embargo, una opción muy popular es usar un cliente como PuTTY, que podrás utilizar en cualquier versión de Windows:
Como cualquier cliente SSH, PuTTY recordará el certificado que use tu servicio SSH en Ubuntu 18.04:
Se te pedirá el nombre de usuario y la contraseña, y podrás trabajar de forma muy cómoda en su emulador de terminal:
Cómo configurar SSH en Ubuntu 18.04
Para configurar SSH en Ubuntu 18.04 debes saber que el directorio principal de configuración es /etc/ssh/. Bajo esa ruta se encuentran los archivos de configuración del servicio ssh y los certificados que usa.
El archivo principal es sshd_config, que podemos editar como superusuario:
~$ sudo nano /etc/ssh/sshd_config
En este archivo encontrarás distintas directivas que se encargan de ajustar los valores de configuración del sevicio. Por ejemplo, la directiva Port que indica el puerto de escucha de SSH:
... #Port 22 ...
Como ves está desactivada y se toma el valor por defecto, que en este caso es el que viene indicado.
Otra directiva interesante es HostKey, que se encarga de configurar los certificados que se usan para cifrar la conexión:
... #HostKey /etc/ssh/ssh_host_rsa_key #HostKey /etc/ssh/ssh_host_ecdsa_key #HostKey /etc/ssh/ssh_host_ed25519_key ...
Si quieres usar tus propios certificados puedes renombrarlos con los nombres que aparecen en la configuración, o activar las directivas HostKey (eliminando el carácter inicial #) y especificando las rutas a tus certificados.
Otra configuración que está activa por defecto es la posibilidad de iniciar sesión usando un certificado en lugar de contraseña:
... #PubkeyAuthentication yes ...
La directiva AuthorizedKeysFile indicará en qué archivo del usuario buscará la clave pública para compararla con el certificado configurado en el cliente:
... #AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2 ...
Cualquier cambio que hagas en la configuración del servicio SSH en Ubuntu 18.04 exigirá que la recargues para que entre en funcionamiento:
~$ sudo systemctl reload ssh.service
Conclusión
Ahora que ya sabes cómo instalar y configurar SSH en Ubuntu 18.04 puedes iniciar sesión remota de forma segura desde prácticamente cualquier dispositivo conectado a la red que disponga de un cliente SSH. No sólo podrás iniciar sesiones de terminal de comandos, sino que podrás copiar arhivos con comandos como scp, sftp, etc.
Deja un comentario si te ha surgido alguna duda, pregunta, etc. o tienes alguna sugerencia, correción, etc.
¡Apoya este sitio!
¿Has conseguido realizar la instalación y configuración de este servicio de acceso remoto en tu sistema gracias a nuestra guía y quieres agradecérnoslo? Si es así puedes hacerlo dejando 1 $ como propina en PayPal para una CocaCola:
Aunque si te sientes especialmente agradecido puedes invitarme a un cappuccino:
¡Gracias!
Buen artículo sobre SSH en Ubuntu.
Muchas gracias al administrador del sitio.
Saludos desde Chile.
¡Me alegro de que te haya gustado, Manuel!
Muy buena información, aunque cuando intento ingresar se queda esperando y al final da tiempo de conexión superado.
Aham. Con la cantidad de información que aportas cualquiera podría indicarte el problema. ¿Intentas conectar por dirección IP o por nombre DNS, dominio, etc.? La máquina desde la que quieres conectar al servicio SSH de la máquina Ubuntu 18.04, ¿obtiene respuesta de esta a través de ping a su IP o nombre DNS, dominio, etc.? ¿Tiene el servidor Ubuntu 18.04 activado el firewall y si es así estás seguro de que permite las conexiones SSH? ¿Está el servicio SSH en activo?
Hola, gracias por la info.
¡De nada, Erwin!