„Mosh (Software)“ – Versionsunterschied
[gesichtete Version] | [ungesichtete Version] |
KKeine Bearbeitungszusammenfassung | Keine Bearbeitungszusammenfassung | ||
Zeile 18: | Zeile 18: | ||
; IPv6 Support | ; IPv6 Support | ||
Mosh unterstützt | 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:
- Pro Verbindung kann der UDP-Port gesetzt werden, so dass es ausreicht eine geringe Anzahl an Ports freizugeben.[12]
- 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
- ↑ http://mosh.mit.edu/
- ↑ https://www.linux.com/learn/tutorials/562553-into-the-mosh-pit-a-mobile-shell-replacement-for-ssh
- ↑ http://www.techopedia.com/2/28746/tech-support/linux/mosh-secure-shell-without-the-pain
- ↑ http://www.networkworld.com/news/2012/070612-usenix-mosh-260708.html
- ↑ http://www.linux-magazine.com/Issues/2012/144/Mosh-and-AutoSSH
- ↑ http://mosh.mit.edu/
- ↑ http://www.zinger-soft.com/iSSH_features.html
- ↑ "'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.
- ↑ "Mosh bug report #285: Can't use a ProxyCommand-based SSH connection", Retrieved on 18 June 2014
- ↑ "Dangers of opening up a wide range of ports? (mosh)", IT Security (Stack Exchange), 13 April 2012. Retrieved on 28 March 2013.
- ↑ Multiplexing more sessions into same UDP port
- ↑ "use -p to define remote UDP port"
- ↑ https://github.com/keithw/mosh/issues/81
- ↑ https://github.com/keithw/mosh/issues/2 "Scrollback support is planned for version 1.3"
- ↑ "Scrollback and alternate screen (was: Use alternate screen on smcup/rmcup)"
- ↑ "SSH Agent Forwarding"
- ↑ "Support X forwarding"