„Mosh (Software)“ – Versionsunterschied

[gesichtete Version][ungesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
KKeine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 18:Zeile 18:


; IPv6 Support
; IPv6 Support
Mosh unterstützt bislang kein IPv6.<ref>https://github.com/keithw/mosh/issues/81</ref>
Mosh unterstützt erst ab Version 1.2.5 IPv6.<ref>https://github.com/keithw/mosh/issues/81</ref>


; Terminal Scrollback und output drops
; Terminal Scrollback und output drops

Version vom 8. Oktober 2015, 18:19 Uhr

Als Mosh (mobile shell) wird ein Computerprogramm bezeichnet, welches benutzt wird, um lokal eine entfernte Kommandozeile verfügbar zu machen.[1] Mosh ähnelt SSH,[2] hat aber weitere Funktionalitäten, um die Verwendung für mobile Nutzer zu verbessern. Die Hauptfunktionen sind:

  • Mosh hält die Verbindung aufrecht, auch wenn der Benutzer "roamt" und eine andere IP-Adresse erhält, beispielsweise wenn der Benutzer eines WLAN in ein anderes WLAN wechselt oder von WLAN zu UMTS wechselt.[3]
  • Mosh hält die Verbindung offen, wenn ein Benutzer die Internetverbindung verliert oder stellt den Client in einen "Schlafmodus". SSH kann seine Verbindung verlieren, da TCP Pakete verwirft, wenn der Sender nach einer bestimmten Zeit (Timeout) keine Bestätigung erhält.[4]
  • Mosh versucht dem Benutzer sofort zu zeigen, welche Tasten er getippt hat und welche Buchstaben und Wörter er gelöscht hat, um die Latenz auszugleichen.[5]

Die Hauptnachteile von Mosh sind, dass es zusätzliche Anforderungen an den Server stellt und manche Zusatzfunktionen von SSH nicht verwendet werden können.

Unterstützte Plattformen

Mosh ist für die meisten Linux Distributionen, Mac OS X, FreeBSD und OpenBSD, Android, Solaris und Cygwin verfügbar.[6] Für iOS stellt die Applikation iSSH eine unabhängige Implementation von Mosh zur Verfügung.[7]

Nachteile

Anforderungen an den Server

Der Hauptnachteil von Mosh ist, dass es im Vergleich zu ssh zusätzliche Anforderungen an einen Server stellt, denn es benötigt aufgrund seines Designs vollen UDP-Zugriff auf den Server.[8] Auf Servern, die diese Anforderung nicht erfüllen, kann Mosh nicht einsetzt werden. Beispiele dafür sind Systeme hinter Firewalls, die nur den ssh-Port via TCP freigeben. Problematisch sind auch Server, die nur indirekt erreichbar sind. Während man dies bei ssh mit der Option 'ProxyCommand' lösen kann, wird dies von Mosh nicht unterstützt.[9]

Ein Port pro Verbindung

Standardmäßig versucht der Mosh-Server pro Verbindung den ersten freien UDP-Port aus dem Range 60000-61000 zu belegen. Diese dynamische Port-Nutzung wird im Bezug auf eine saubere Firewallkonfiguration als sicherheitsrelevanter Nachteil angesehen.[10] Firewalls versuchen in der Regel Verbindungen zu Tracken (sogenanntes Stateful Filtering), welches auf SYN/ACK flags im TCP basiert, UDP Pakete haben jedoch solche Flags nicht.[11]
Workarounds:

  1. Pro Verbindung kann der UDP-Port gesetzt werden, so dass es ausreicht eine geringe Anzahl an Ports freizugeben.[12]
  2. Deep Packet Inspection Firewalls und Application Firewalls können eingesetzt werden, um eine inhaltliche Analyse des Datenverkehrs zu machen.
IPv6 Support

Mosh unterstützt erst ab Version 1.2.5 IPv6.[13]

Terminal Scrollback und output drops

Scrollback wird bislang nicht unterstützt - sofern ein Terminal Emulator mit Scrollbars eingesetzt wird, dann werden diese ausgeblendet. Diese Funktion ist für das Release 1.3 eingeplant.[14] Ein Workaround ist derzeit, dass Mosh in Verbindung mit Screen oder tmux eingesetzt wird, die eine eigene Scrollback-Funktionalität mitbringen.[15]

SSH-Agent-Forwarding

SSH-Agent-Forwarding wird bislang nicht unterstützt.[16]

X11-Forwarding

X11-Forwarding wird bislang nicht unterstützt.[17]

Einzelnachweise

  1. http://mosh.mit.edu/
  2. https://www.linux.com/learn/tutorials/562553-into-the-mosh-pit-a-mobile-shell-replacement-for-ssh
  3. http://www.techopedia.com/2/28746/tech-support/linux/mosh-secure-shell-without-the-pain
  4. http://www.networkworld.com/news/2012/070612-usenix-mosh-260708.html
  5. http://www.linux-magazine.com/Issues/2012/144/Mosh-and-AutoSSH
  6. http://mosh.mit.edu/
  7. http://www.zinger-soft.com/iSSH_features.html
  8. "'Mosh will log the user in via SSH, then start a connection on a UDP port between 60000 and 61000.'", Retrieved on 19 June 2014.
  9. "Mosh bug report #285: Can't use a ProxyCommand-based SSH connection", Retrieved on 18 June 2014
  10. "Dangers of opening up a wide range of ports? (mosh)", IT Security (Stack Exchange), 13 April 2012. Retrieved on 28 March 2013.
  11. Multiplexing more sessions into same UDP port
  12. "use -p to define remote UDP port"
  13. https://github.com/keithw/mosh/issues/81
  14. https://github.com/keithw/mosh/issues/2 "Scrollback support is planned for version 1.3"
  15. "Scrollback and alternate screen (was: Use alternate screen on smcup/rmcup)"
  16. "SSH Agent Forwarding"
  17. "Support X forwarding"