Mosh, qui signifie Mobile Shell, est une application en ligne de commande utilisée pour se connecter au serveur depuis un ordinateur client, via Internet. Il peut être utilisé comme SSH et contient plus de fonctionnalités que Secure Shell.
C’est une application similaire à SSH, mais avec des fonctionnalités supplémentaires. L’application a été initialement écrite par Keith Winstein pour les systèmes d’exploitation de type Unix et publiée sous GNU GPL v3.

Fonctionnalités de Mosh
- C’est une application de terminal à distance qui prend en charge l’itinérance.
- Disponible pour tous les principaux systèmes d’exploitation de type UNIX, à savoir Linux, FreeBSD, Solaris, Mac OS X et Android.
- Connectivité intermittente prise en charge.
- Fournit une écho local intelligent.
- Édition de ligne des frappes des utilisateurs prise en charge.
- Conception réactive et nature robuste sur wifi, cellulaire et liens longue distance.
- Rester connecté même en cas de changement d’IP. Il utilise l’UDP à la place du TCP (utilisé par SSH). Le TCP se déconnecte lorsque la connexion est réinitialisée ou qu’une nouvelle IP est attribuée, mais l’UDP maintient la connexion ouverte.
- La connexion reste intacte lorsque vous reprenez la session après un long moment.
- Pas de décalage réseau. Affiche immédiatement les touches tapées par les utilisateurs et les suppressions sans décalage réseau.
- Même ancienne méthode de connexion qu’avec SSH.
- Mécanisme pour gérer la perte de paquets.
Installation de Mosh Shell sous Linux
Sur Debian, les systèmes similaires à Ubuntu et Mint, vous pouvez facilement installer le paquet Mosh à l’aide du gestionnaire de paquets apt-get comme indiqué.
# apt-get update # apt-get install mosh
Sur les distributions basées sur RHEL/CentOS/Fedora, vous devez activer le dépôt tiers appelé EPEL, afin d’installer mosh à partir de ce dépôt en utilisant le gestionnaire de paquets yum comme indiqué.
# yum update # yum install mosh
Sur la version Fedora 22+, vous devez utiliser le gestionnaire de paquets dnf pour installer mosh comme indiqué.
# dnf install mosh
Sur d’autres distributions Linux, vous pouvez l’installer comme indiqué.
# pacman -S mosh [On Arch/Manjaro Linux] $ sudo zypper in mosh [On OpenSuse] # emerge net-misc/mosh [On Gentoo]
Comment utiliser Mosh Shell?
1. Essayons de nous connecter au serveur Linux distant en utilisant le shell mosh.
$ mosh [email protected]

Note: Avez-vous remarqué que j’ai obtenu une erreur de connexion car le port n’était pas ouvert dans ma boîte CentOS 7 distante. Une solution rapide mais non recommandée que j’ai effectuée était:
# systemctl stop firewalld [on Remote Server]
La méthode préférée consiste à ouvrir un port et à mettre à jour les règles du pare-feu. Puis se connecter à mosh sur un port prédéfini. Pour des détails approfondis sur firewalld, vous pouvez consulter ce post.
2. Supposons que le port SSH par défaut 22 a été modifié pour le port 70, dans ce cas, vous pouvez définir un port personnalisé à l’aide de l’option ‘-p‘ avec mosh.
$ mosh [email protected] --ssh="ssh -p 70"
3. Vérifiez la version de Mosh installée.
$ mosh --version

4. Vous pouvez fermer la session mosh en tapant ‘exit‘ à l’invite.
$ exit
5. Mosh prend en charge de nombreuses options, que vous pouvez voir comme suit:
$ mosh --help

Inconvénients de Mosh Shell
- Mosh nécessite des prérequis supplémentaires, par exemple, autoriser une connexion directe via UDP, ce qui n’était pas requis par SSH.
- Allocation de port dynamique dans la plage de 60000-61000. Le premier fort ouvert est alloué. Il nécessite un port par connexion.
- L’attribution de port par défaut est une préoccupation majeure en matière de sécurité, en particulier en production.
- Les connexions IPv6 sont prises en charge, mais le roaming sur IPv6 n’est pas pris en charge.
- Le défilement n’est pas pris en charge.
- Aucune prise en charge du transfert X11.
- Aucune prise en charge du transfert d’agent ssh.
Conclusion
Mosh est un petit utilitaire agréable qui est disponible en téléchargement dans le référentiel de la plupart des distributions Linux. Bien qu’il présente quelques lacunes, notamment en matière de sécurité et d’exigences supplémentaires, ses fonctionnalités telles que le maintien de la connexion même en itinérance sont un point positif. Ma recommandation est que chaque utilisateur de Linux qui travaille avec SSH devrait essayer cette application et garder à l’esprit que Mosh vaut la peine d’être essayé.
Source:
https://www.tecmint.com/mosh-shell-ssh-alternative-on-linux/