Aprende a usar SSH -y Tmux- en 15 min.


27 de diciembre, 2025

¿Qué es SSH y OpenSSH?

SSH o Secure-Shell es, como su nombre lo indica, un emulador de terminal seguro, principalmente utilizado para la conexión entre una máquina cliente y un servidor. OpenSSH es, por su parte, el programa que por defecto utilizan los sistemas GNU/Linux y BSD para realizar este tipo de conexiones. El puerto por defecto del protocolo SSH es el Puerto 22, sin embargo puede -y se recomienda- ser cambiado por otro puerto con el fin de aumentar la seguridad del sistema. Aprender a utilizar SSH forma parte del conjunto de habilidades necesarias de cualquier SysAdmin, ya que es el estándar de la industria para el manejo y mantenimiento de servidores.

Instalar SSH

Por lo regular la inmensa mayoría de distribuciones ya tienen instalado SSH, pero por las dudas ejecutaremos el comando de instalación, el cual de paso suele instalar todas las dependencias necesarias (entre ellas OpenSSH) para poder trabajar con esta poderosa herramienta:

~$ sudo apt-get install ssh -y #Debian y derivadas

~$ sudo pacman -S openssh #Arch y derivadas

Primeros pasos con SSH

La sintaxis principal de SSH se resume en el comando (ssh) y una serie de directivas, principalmente una de ellas la cual es el usuario y la dirección IP del server:

~$ ssh usuario@192.1.1.1

Al ejecutar el comando anterior se te pedirá que ingreses la contraseña del usuario mediante el cual estás tratando de acceder al server; por lo regular en servidores profesionales se suele trabajar mediante el usuario root del sistema, y es por ello mismo que SSH nos ofrece una manera más segura de conectarnos a un server sin necesidad de escribir alguna contraseña de usuario del sistema y ésa es mediante la creación y uso de par de llaves de SSH:

~$ ssh-keygen

El proceso de creación de las llaves es muy sencillo y no difiere en lo absoluto del proceso de crear otras llaves como sucede con GPG. Una vez tengamos nuestras llaves, tanto pública como privada, lo siguiente es compartir precisamente nuestra llave pública con el server:

~$ ssh-copy-id -i ~/.ssh/id_etc.pub usuario@192.1.1.1

Ahora cada vez que trates de conectarte al server no se te pedirá ningna contraseña de usuario, ni siquiera de root, sino la contraseña de tu llave privada de SSH. Otras configuraciones de seguridad que suelen ser puestas en practica son las de editar los archivos de configuración de SSH, los cuales son /etc/ssh/ssh_config para el cliente y /etc/ssh/sshd_config para el server; así pues también se recomienda en servidores profesionales o de producción cambiar el puerto de SSH, es decir el puerto 22 por cualquier otro puerto seguro, por lo regular el 2222.

¿Qué es Tmux?

Por definición Tmux es un multiplexor de terminal -o para emulador de terminal, lo que básicamente se resume en que con Tmux podemos iniciar diferentes sesiones al mismo tiempo en una terminal, por lo que cuando se trabaja con varios servidores al mismo tiempo Tmux se convierte en un grandísimo aliado. Así pues, trabajar con Tmux nos ofrece una mayor ventaja que al hacerlo en una terminal sin más, y es que Tmux provee de una reconocida función por default de "historial de cambios", lo que nos permite revertir cambios hechos o, en caso de un apagón, guardar el progreso que se llevaba hasta ese momento. Para lanzar Tmux solo debe escribirse tmux en la terminal y listo, se abrirá una sesión dentro de la propia terminal. Ahora bien, el funcionamiento de Tmux puede ir desde lo más básico hasta lo más avanzado, como puede ser la instalación de plugins; sin embargo ya te digo yo que con tener zsh (autosuggestions & syntax-highlight) es más que suficiente para el día a día; eso sí, debes tener en cuenta que tmux utiliza una serie de comandos para permitirnos abrir y cerrar sesiones, así como dividir la pantalla en mosaico. No me extenderé demasiado en esta parte, ya que el uso de Tmux dependerá de las necesidades del usuario, pero a continuación te dejo una lista oficial de combinaciónes de teclas para utilizar Tmux: Tmux-Cheatsheet.