Accueil Réseaux Mosh: coque sécurisée sans douleur

Mosh: coque sécurisée sans douleur

Table des matières:

Anonim

Si vous êtes un technicien professionnel, vous connaissez sans aucun doute Secure Shell (SSH) et l'utilisez régulièrement pour vous connecter à des systèmes distants. Bien qu'il s'agisse d'un excellent outil, SSH suppose que vous disposez d'une connexion filaire fiable. Cela ne fonctionne pas toujours aussi bien sur les connexions sans fil, ce qui peut être peu fiable. Un nouvel outil qui a changé est Mosh, ou Mobile Shell, qui permet aux utilisateurs de se connecter à des systèmes distants et de rester connectés même lorsque le réseau tombe en panne ou que vous changez de réseau.

Pourquoi Mosh?

Secure Shell est indispensable pour les administrateurs, les programmeurs et les utilisateurs expérimentés qui ont besoin de se connecter à des serveurs, dans le hall ou à travers le pays. Il s'agit d'un remplacement sécurisé et crypté de Telnet. C'est un excellent outil, mais il a été conçu dans les années 90, une époque avant que les ordinateurs mobiles sur Wi-Fi ne deviennent courants. SSH suppose une connexion filaire fiable, ce qui n'est pas toujours le cas lorsque les utilisateurs deviennent mobiles. La connectivité Wi-Fi, comme beaucoup de gens l'ont trouvé, est souvent inégale et il est impossible de changer de connexion, par exemple du Wi-Fi au LTE, sans interrompre une connexion.


D'autres fois, ce n'est pas la faute de la connexion, mais plutôt l'utilisateur. Ou, comme on dit en informatique, c'est un PEBKAC (un problème existe entre le clavier et le fauteuil). Mon préféré de tous les temps est de fermer le couvercle tout en oubliant que je suis connecté à une machine distante via SSH. J'ouvre le couvercle et tape dans la fenêtre du terminal et rien ne se passe. Tout ce que je peux faire, c'est arrêter la session et me reconnecter. C'est ennuyeux, mais je l'ai fait d'innombrables fois et je suis sûr que vous l'avez fait aussi.


Beaucoup de gens essaient d'atténuer cela en utilisant des programmes comme GNU Screen et tmux. Ce sont des multiplexeurs de terminaux qui vous offrent non seulement quelque chose comme la navigation par onglets pour la ligne de commande, mais peuvent également préserver votre session en cas de panne de votre connexion. Reconnectez-vous et vous pourrez reprendre là où vous vous étiez arrêté. Aussi pratiques que soient ces programmes, les problèmes avec SSH lui-même persistent.


J'ai été résigné à mon sort SSH, mais un jour, je suis tombé sur un nouveau programme sur un serveur shell sur lequel je traîne. Mosh est une tentative d'améliorer SSH, le rendant approprié pour une utilisation sur les ordinateurs portables. Il est développé par des gens intelligents du MIT, les gens qui nous ont apporté Lisp (donc ils savent probablement une bonne chose quand ils en voient un). Keith Winstein, l'un des principaux développeurs, a créé une vidéo montrant comment cela fonctionne.


Les créateurs de Mosh le décrivent comme un remplacement de SSH qui est plus robuste et réactif, en particulier sur les liaisons Wi-Fi, cellulaires et longue distance.

Comment ça fonctionne

Mosh utilise un nouveau protocole appelé State Synchronization Protocol (SSP). Cela s'appuie sur les protocoles de connexion à distance traditionnels comme Telnet et SSH. Sous SSH, le serveur envoie simplement quelques octets en aval au client pour être interprété.


SSP ajoute une autre couche. Le serveur et le client gardent une trace de ce qui a été envoyé à l'aide des numéros de séquence. Si le serveur obtient un numéro de séquence supérieur à celui qu'il a envoyé précédemment, il est suffisamment intelligent pour comprendre que le client est passé à une autre connexion. Cela signifie qu'il est facile de se déplacer d'un réseau Wi-Fi à un réseau Wi-Fi, ou d'un réseau Wi-Fi à un réseau cellulaire, ou d'un réseau Wi-Fi à une connexion filaire - et ainsi de suite.


Une autre fonctionnalité intéressante fournie par Mosh est l'écho des caractères en temps réel. Habituellement, si vous êtes sur SSH, vous pouvez trouver un délai entre la frappe et l'attente de l'apparition de vos caractères à l'écran car le serveur fait écho à ce que vous tapez.

L'obtenir

Si vous êtes intrigué, vous serez heureux de savoir que l'installation de Mosh est assez facile. La plupart des principales distributions Linux et Unix l'ont dans leurs référentiels. La page d'accueil de Mosh montre des exemples utilisant Debian et Ubuntu, ainsi que Gentoo, Arch et Fedora. Étant donné que Mac OS X est basé sur Unix, les utilisateurs Mac peuvent également participer. Il y a un paquet natif, et les gens qui veulent le compiler sur le Mac en utilisant Homebrew et MacPorts. Si votre système n'a pas Mosh en tant que package, vous pouvez le télécharger et le compiler vous-même si vous en avez besoin.


Une fois le client installé, vous êtes prêt à installer Mosh et à vous connecter. Vous vous connectez exactement comme vous le faites avec SSH. En fait, Mosh ne gère pas réellement les connexions; il transmet les informations de connexion à SSH. Ceci est utile si vous utilisez les fonctionnalités de chiffrement à clé publique de SSH pour vous connecter en toute sécurité sans avoir besoin d'un mot de passe.


Il y a cependant un hic. Vous avez besoin du serveur Mosh pour vous connecter. Heureusement, vous n'avez pas besoin d'être un superutilisateur pour l'installer. Vous pouvez même le mettre dans votre répertoire personnel et le lancer de cette façon si vous ne pouvez pas inciter l'administrateur système à l'installer. Mosh est encore nouveau, alors peut-être qu'un jour il deviendra aussi omniprésent sur les serveurs que SSH.


Autre chose: Mosh s'attend à ce que votre terminal prenne en charge UTF-8. À peu près tous les émulateurs de terminaux modernes le font, mais vous devrez peut-être définir la variable d'environnement $ LANG avant que le serveur du système distant accepte la connexion.

Rester en vie

Maintenant que vous êtes connecté, vous pouvez commencer à coder ou à modifier vos fichiers de configuration ou à administrer des machines distantes, à la maison, au travail, dans le train ou à l'altitude de croisière.


Vous pouvez tester la robustesse de Mosh en déconnectant votre Wi-Fi. Mosh affichera un message en haut du terminal indiquant qu'il n'a pas de connexion, ainsi qu'une minuterie. Reconnectez-vous et votre session reprendra là où elle s'était arrêtée. Cela fonctionne également si vous fermez le couvercle de votre ordinateur portable.


Mosh est encore meilleur lorsqu'il est associé à un multiplexeur de terminal comme GNU Screen ou tmux. Ils ont été utilisés dans le passé comme Mosh pour garder les sessions SSH actives sur des connexions non fiables, mais ils offrent toujours certains avantages lorsqu'ils sont utilisés avec Mosh. Par exemple, vous pouvez vous détacher d'un terminal, vous déconnecter et vous connecter à partir d'une autre machine, appeler le multiplexeur et le faire continuer. Ceci est très utile pour les longs travaux. Il est également populaire pour les utilisateurs avides d'IRC de rester connectés sur un serveur shell et de se détacher si nécessaire.

Il est temps pour Mosh?

Maintenant que vous avez compris comment Mosh peut améliorer votre expérience de connexion à distance mobile, pourquoi ne pas l'essayer par vous-même?

Mosh: coque sécurisée sans douleur