Cómo mantener una conexión SSH persistente con MOSH

Si trabajas con múltiples conexiones inalámbricas (o cableadas) dentro de tu empresa y te encuentras teniendo que moverte por el campus para realizar tus tareas administrativas, puede haber momentos en los que tengas una conexión SSH establecida y cambies de una red a otra. Cuando eso sucede, tu conexión de shell segura se desconectará. ¿O tal vez tu conexión de red única no siempre es la más confiable? Eso está bien siempre y cuando la tarea administrativa que estás realizando no sea crítica. ¿Qué sucede cuando estás trabajando en algo importante y esa conexión se interrumpe?

No quieres eso, es por eso que debes utilizar una herramienta como MOSH. MOSH significa Mobile Shell y permite mantener una conexión SSH persistente, incluso si cambias de redes o tu conexión se interrumpe momentáneamente. Mejor aún, el uso de MOSH es casi idéntico al de SSH, al menos desde el punto de vista del usuario. En el fondo, MOSH inicia sesión del usuario a través de SSH y luego establece una conexión en un puerto UDP entre 60000 y 61000 para mantener la conexión persistente.

Instalemos MOSH y veamos cómo se utiliza.

Índice de Contenido
  1. Lo que necesitarás
  2. Cómo instalar MOSH
  3. Cómo utilizar MOSH
  4. Cómo configurar el cortafuegos

Lo que necesitarás

MOSH está disponible para Linux, macOS, Windows, Android e iOS. Debes instalar el paquete MOSH tanto en el servidor como en el cliente. Yo estaré demostrando ambos extremos con una distribución de Linux basada en Ubuntu. Para aquellos que trabajan con MacOS, asegúrate de descargar el instalador binario desde la página de descarga de MOSH. Para aquellos que trabajan con Windows, no hay un paquete nativo, así que deberás usar MOSH para Chrome.

Cómo instalar MOSH

MOSH se encuentra en los repositorios estándar de mi distribución. Para instalar MOSH en distribuciones basadas en Ubuntu, el comando sería:

Protección antivirus en línea: McAfee Clinic lleva la seguridad de tu PC al siguiente nivel

sudo apt-get install mosh -y

Si estás en una distribución de Linux basada en Red Hat, el comando sería:

sudo dnf install mosh -y

Asegúrate de instalar MOSH tanto en tu cliente como en tu servidor.

Cómo utilizar MOSH

Por supuesto, esto asume que ya puedes hacer SSH desde el cliente al servidor. En ese caso, puedes utilizar MOSH para realizar esa conexión de la siguiente manera:

mosh USER@SERVER

Cómo proteger tu computadora de los virus: métodos y consejos

Donde USER es el nombre de usuario remoto y SERVER es la dirección IP o el dominio del servidor.

Si, por alguna razón, necesitas utilizar un puerto UDP diferente, el comando sería:

mosh -p PUERTO USER@SERVER

Donde PUERTO es el número de puerto, USER es el nombre de usuario remoto y SERVER es la dirección IP o el dominio del servidor.

Si has configurado SSH para utilizar un puerto no estándar en tu servidor, deberás definirlo dentro del comando MOSH de esta manera:

mosh --ssh="ssh -p PUERTO" USER@SERVER

¡Defiéndete! Protege tu seguridad en línea contra amenazas críticas

Donde PUERTO es el puerto SSH no estándar en el servidor, USER es el nombre de usuario remoto y SERVER es la dirección IP del servidor. Puedes combinar el cambio de puertos UDP y SSH de la siguiente manera:

mosh -p UDP --ssh="ssh -p SSH" USER@SERVER

Donde UDP es el puerto UDP, SSH es el puerto SSH, USER es el nombre de usuario remoto y SERVER es la dirección IP o el dominio del servidor.

MOSH también puede usar identidades SSH de la misma manera en que se usan en SSH, así:

mosh -i IDENTIDAD

Donde IDENTIDAD es el nombre de la identidad que has configurado en ~/.ssh/config.

Protege tus contraseñas con PAM: Tu aliado para la seguridad

Cómo configurar el cortafuegos

El único problema con el que te puedes encontrar es que el cortafuegos de tu servidor rechace las conexiones a los puertos necesarios que MOSH utilizará. Esto es fácil de solucionar. En un servidor que utiliza Uncomplicated Firewall (como Ubuntu Server), el comando para abrir esos puertos sería:

sudo ufw allow 60000:61000/udp

Si tu servidor utiliza iptables, el comando sería:

sudo iptables -I INPUT 1 -p udp --dport 60000:61000 -j ACCEPT

Una vez que has permitido el acceso al puerto, MOSH debería funcionar correctamente.

Y eso es todo lo que necesitas para obtener una conexión SSH más confiable entre tu cliente y servidor, con la ayuda de MOSH. Pruébala y comprueba si tus conexiones SSH se mantienen conectadas mientras te mueves de una red a otra.

Cómo configurar un servidor VPN para hacer conexiones a través de firewalls

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Seguridad, allí encontraras muchos artículos similares a Cómo mantener una conexión SSH persistente con MOSH , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.