Mosh, che sta per Mobile Shell è un’applicazione a riga di comando che viene utilizzata per connettersi al server da un computer client, tramite Internet. Può essere utilizzata come SSH e contiene più funzionalità rispetto a Secure Shell.
È un’applicazione simile a SSH, ma con funzionalità aggiuntive. L’applicazione è stata originariamente scritta da Keith Winstein per sistemi operativi simili a Unix e rilasciata sotto GNU GPL v3.

Caratteristiche di Mosh
- È un’applicazione di terminale remoto che supporta il roaming.
- Disponibile per tutti i principali sistemi operativi simili a UNIX, come Linux, FreeBSD, Solaris, Mac OS X e Android.
- Connessione intermittente supportata.
- Fornisce un’intelligente eco locale.
- Supportata la modifica delle linee di comando inserite dall’utente.
- Design reattivo e natura robusta su wifi, cellulari e collegamenti a lunga distanza.
- Rimane connesso anche quando l’IP cambia. Utilizza UDP al posto di TCP (usato da SSH). TCP si disconnette quando la connessione viene resettata o viene assegnato un nuovo IP, ma UDP mantiene la connessione aperta.
- La connessione rimane intatta quando si riprende la sessione dopo molto tempo.
- Nessun ritardo di rete. Mostra immediatamente le tasti digitati dagli utenti e le cancellazioni senza ritardi di rete.
- Stesso vecchio metodo di accesso come in SSH.
- Meccanismo per gestire la perdita di pacchetti.
Installazione di Mosh Shell in Linux
Su sistemi simili a Debian, Ubuntu e Mint, è possibile installare facilmente il pacchetto Mosh con l’aiuto del gestore dei pacchetti apt-get come mostrato.
# apt-get update # apt-get install mosh
Sulle distribuzioni basate su RHEL/CentOS/Fedora, è necessario attivare il repository di terze parti chiamato EPEL, per installare mosh da questo repository usando il gestore dei pacchetti yum come mostrato.
# yum update # yum install mosh
Sulla versione Fedora 22+, è necessario utilizzare il gestore dei pacchetti dnf per installare mosh come mostrato.
# dnf install mosh
Su altre distribuzioni Linux, è possibile installarlo come mostrato.
# pacman -S mosh [On Arch/Manjaro Linux] $ sudo zypper in mosh [On OpenSuse] # emerge net-misc/mosh [On Gentoo]
Come si usa la Shell Mosh?
1. Proviamo a accedere al server Linux remoto utilizzando la shell mosh.
$ mosh [email protected]

Nota: Hai visto che ho ottenuto un errore nella connessione poiché la porta non era aperta nella mia casella CentOS 7 remota. Una soluzione rapida ma non raccomandata che ho eseguito è stata:
# systemctl stop firewalld [on Remote Server]
Il modo preferito è aprire una porta e aggiornare le regole del firewall. E poi connettersi a mosh su una porta predefinita. Per dettagli approfonditi su firewalld potresti visitare questo post.
2. Supponiamo che la porta predefinita SSH 22 sia stata modificata in porta 70, in questo caso puoi definire una porta personalizzata con l’aiuto dello switch ‘-p‘ con mosh.
$ mosh [email protected] --ssh="ssh -p 70"
3. Controlla la versione di Mosh installata.
$ mosh --version

4. Puoi chiudere la sessione di mosh digitando ‘exit‘ sul prompt.
$ exit
5. Mosh supporta molte opzioni, che puoi vedere come:
$ mosh --help

Contro del Mosh Shell
- Il Mosh richiede prerequisiti aggiuntivi, ad esempio, consentire la connessione diretta via UDP, cosa non richiesta da SSH.
- Assegnazione dinamica della porta nell’intervallo di 60000-61000. La prima porta aperta viene assegnata. Richiede una porta per ogni connessione.
- Assegnazione predefinita della porta è una grave preoccupazione per la sicurezza, specialmente in produzione.
- Connessioni IPv6 supportate, ma roaming su IPv6 non supportato.
- Scrollback non supportato.
- Nessun supporto per l’inoltro X11.
- Nessun supporto per l’inoltro ssh-agent.
Conclusione
Mosh è una piccola utility molto utile disponibile per il download nel repository della maggior parte delle distribuzioni Linux. Anche se ha alcune discrepanze, specialmente per quanto riguarda la sicurezza e i requisiti aggiuntivi, le sue caratteristiche, come rimanere connessi anche durante lo spostamento, sono un punto a favore. La mia raccomandazione è che ogni utente di Linux che lavora con SSH dovrebbe provare questa applicazione e tenere presente che Mosh merita sicuramente una prova.
Source:
https://www.tecmint.com/mosh-shell-ssh-alternative-on-linux/