Inhaltsverzeichnis:
Wenn Sie ein technischer Fachmann sind, kennen Sie sich zweifellos mit Secure Shell (SSH) aus und verwenden es regelmäßig, um eine Verbindung zu Remote-Systemen herzustellen. Obwohl SSH ein großartiges Tool ist, setzt es eine zuverlässige Kabelverbindung voraus. Es funktioniert nicht immer so gut bei drahtlosen Verbindungen, was unzuverlässig sein kann. Ein neues Tool, das sich geändert hat, ist Mosh oder Mobile Shell, mit dem Benutzer eine Verbindung zu Remote-Systemen herstellen und in Verbindung bleiben können, auch wenn das Netzwerk ausfällt oder Sie das Netzwerk wechseln.
Warum Mosh?
Secure Shell ist für Administratoren, Programmierer und Hauptbenutzer unverzichtbar, die sich auf Servern überall in der Halle oder im Land anmelden müssen. Es ist ein sicherer, verschlüsselter Ersatz für Telnet. Es ist ein großartiges Tool, aber es wurde in den 90er Jahren entwickelt, als mobile Computer mit WLAN noch keine Seltenheit waren. SSH setzt eine zuverlässige Kabelverbindung voraus, was nicht immer der Fall ist, wenn Benutzer mobil sind. Wie viele Leute festgestellt haben, ist die Wi-Fi-Konnektivität oft unzuverlässig und es ist unmöglich, Verbindungen, beispielsweise von Wi-Fi zu LTE, zu ändern, ohne eine Verbindung zu trennen.
In anderen Fällen liegt es nicht an der Verbindung, sondern am Benutzer. Oder, wie es in der IT heißt, ein PEBKAC (Problem zwischen Tastatur und Stuhl). Mein absoluter Favorit ist das Schließen des Deckels, während ich vergesse, dass ich über SSH bei einem Remotecomputer angemeldet bin. Ich öffne den Deckel und tippe das Terminalfenster ein und nichts passiert. Ich kann die Sitzung nur beenden und mich erneut anmelden. Es ist ärgerlich, aber ich habe es unzählige Male gemacht und ich bin sicher, dass Sie es auch getan haben.
Viele Menschen versuchen, dies durch Programme wie GNU Screen und tmux zu mildern. Hierbei handelt es sich um Terminal-Multiplexer, mit denen Sie nicht nur die Befehlszeile mit Registerkarten durchsuchen, sondern auch Ihre Sitzung beibehalten können, falls Ihre Verbindung unterbrochen wird. Melden Sie sich einfach wieder an und Sie können dort weitermachen, wo Sie aufgehört haben. So praktisch diese Programme auch sind, die Probleme mit SSH selbst bleiben bestehen.
Ich war mit meinem SSH-Schicksal resigniert, aber eines Tages stieß ich auf ein neues Programm auf einem Shell-Server, auf dem ich mich aufgehalten habe. Mosh ist ein Versuch, SSH so zu verbessern, dass es für den Einsatz auf Laptops geeignet ist. Es wurde von einigen klugen Leuten am MIT entwickelt, den Leuten, die uns Lisp gebracht haben (sie wissen wahrscheinlich etwas Gutes, wenn sie eines sehen). Keith Winstein, einer der Hauptentwickler, hat ein Video erstellt, das zeigt, wie es funktioniert.
Die Macher von Mosh beschreiben es als Ersatz für SSH, das robuster und reaktionsschneller ist, insbesondere über Wi-Fi, Mobilfunk und Fernverbindungen.
Wie es funktioniert
Mosh verwendet ein neues Protokoll namens State Synchronization Protocol (SSP). Dies baut auf traditionellen Remote-Verbindungsprotokollen wie Telnet und SSH auf. Unter SSH sendet der Server nur einige Bytes zum Client, um sie zu interpretieren.
SSP fügt eine weitere Ebene hinzu. Der Server und der Client verfolgen mithilfe von Sequenznummern, was gesendet wurde. Wenn der Server eine Sequenznummer erhält, die höher ist als die zuvor gesendete, kann er mit Bedacht feststellen, dass der Client zu einer anderen Verbindung gewechselt ist. Dies bedeutet, dass das Roaming von einem Wi-Fi-Netzwerk zu einem Wi-Fi-Netzwerk oder von einem Wi-Fi-Netzwerk zu einem Mobilfunknetz oder von einem Wi-Fi-Netzwerk zu einer Kabelverbindung einfach ist.
Ein weiteres nettes Feature von Mosh ist das Echtzeit-Charakter-Echo. Wenn Sie sich in SSH befinden, kann es in der Regel zu einer Verzögerung zwischen der Eingabe und dem Warten auf die Anzeige Ihrer Zeichen auf dem Bildschirm kommen, während der Server Ihre Eingaben wiederholt.
Es bekommen
Wenn Sie neugierig sind, werden Sie froh sein zu wissen, dass die Installation von Mosh einfach genug ist. Die meisten großen Linux- und Unix-Distributionen haben es in ihren Repositories. Die Mosh-Homepage zeigt Beispiele mit Debian und Ubuntu sowie Gentoo, Arch und Fedora. Da Mac OS X auf Unix basiert, können auch Mac-Benutzer teilnehmen. Es gibt ein natives Paket und Leute, die es mit Homebrew und MacPorts auf dem Mac kompilieren möchten. Wenn Ihr System nicht über Mosh als Paket verfügt, können Sie es bei Bedarf selbst herunterladen und kompilieren.
Wenn Sie den Client installiert haben, können Sie Mosh zum Laufen bringen und sich anmelden. Sie melden sich genau wie bei SSH an. Tatsächlich kümmert sich Mosh nicht wirklich um die Logins. Es übergibt die Anmeldeinformationen an SSH. Dies ist nützlich, wenn Sie die Verschlüsselungsfunktionen für öffentliche Schlüssel von SSH verwenden, um sich sicher ohne Kennwort anzumelden.
Es gibt jedoch einen Haken. Sie benötigen den Mosh-Server, um eine Verbindung herzustellen. Zum Glück müssen Sie kein Superuser sein, um es zu installieren. Sie können es sogar in Ihr Home-Verzeichnis legen und auf diese Weise starten, wenn Sie den Sysadmin nicht überreden können, es zu installieren. Mosh ist noch neu, also wird es vielleicht eines Tages auf Servern so allgegenwärtig wie SSH.
Eine andere Sache: Mosh erwartet, dass Ihr Terminal UTF-8 unterstützt. So gut wie alle modernen Terminalemulatoren, aber möglicherweise müssen Sie die Umgebungsvariable $ LANG festlegen, bevor der Server auf dem fernen System die Verbindung akzeptiert.
Am Leben bleiben
Jetzt, da Sie verbunden sind, können Sie Ihre Konfigurationsdateien verschlüsseln oder bearbeiten oder entfernte Maschinen entweder zu Hause, auf der Arbeit, im Zug oder in Reiseflughöhe verwalten.
Sie können testen, wie robust Mosh ist, indem Sie Ihr WLAN trennen. Mosh zeigt oben im Terminal eine Meldung an, dass keine Verbindung besteht, zusammen mit einem Timer. Stellen Sie die Verbindung wieder her und Ihre Sitzung wird genau dort fortgesetzt, wo sie aufgehört hat. Dies funktioniert auch, wenn Sie den Laptopdeckel schließen.
Mosh ist sogar noch besser, wenn es mit einem Terminal-Multiplexer wie GNU Screen oder tmux gepaart wird. Sie wurden in der Vergangenheit so wie Mosh verwendet, um SSH-Sitzungen über unzuverlässige Verbindungen aktiv zu halten, bieten aber dennoch einige Vorteile, wenn sie mit Mosh verwendet werden. Sie können beispielsweise von einem Terminal trennen, sich von einem anderen Computer abmelden und anmelden, den Multiplexer aufrufen und fortfahren lassen. Dies ist sehr nützlich für lange Jobs. Es ist auch beliebt, dass begeisterte Benutzer von IRC auf einem Shell-Server in Verbindung bleiben und die Verbindung bei Bedarf trennen.
Zeit für Mosh?
Nachdem Sie nun einen Vorgeschmack darauf erhalten haben, wie Mosh Ihre mobile Remote-Anmeldung erheblich verbessern kann, können Sie es doch selbst ausprobieren.