Premier Training & Business Partner Red Hat

Connessioni intelligenti con mosh

Alessandro Lorenzi
Ti piacerebbe diventare anche tu uno di noi e
pubblicare i tuoi articoli nel blog degli RHCE italiani?

Se vi capita spesso di connettervi a server remoti via ssh su connessioni ad alta latenza (ad esempio attraverso il vostro smartphone), avrete sicuramente i nervi a fior di pelle: schiacci un tasto e non fa nulla, schiacci un aseconda volta e dopo un secondo compare una strisciata di lettere, perdi un attimo la connessione e dici addio alla sessione.

Un’esperienza traumatica.

Probailmente tutto ciò che vi serve è mosh. Mosh lavora con ssh, quindi manterrete le chiavi salvate, l’unica differenza è che dopo aver avviato la sessione ssh, mosh inizia a comunicare via UDP.

Quando scrivete in locale noterete che alcune parti di testo sono sottolineate, sono quelle che il server non ha ancora ricevuto, ma intanto voi iniziate a vedere quello che avete scritto. Inoltre potete far cadere la connessione quante volte volete perchè è altamente fault tollerant e ricmincia a lavorare come nulla fosse successo appena la connessione si riprende. Allo stesso modo potete mettere in sospensione il portatile.

Per installare questa bellezza sul client/server Red Hat / Fedora basta installare il pacchetto mosh

# yum install -y mosh 

Il client è disponibile per linux, BSD, Mac, Android. In questa pagigina trovate le istruzioni su come installare mosh su qualsiasi dispositivo (lavatrice esclusa).

Anche il port per Android, che è una patch casereccia di irssiConnectBot, funziona bene, o per lo meno, a me non ha dato problemi.Se vi capita spesso di connettervi a server remoti via ssh su connessioni ad alta latenza (ad esempio attraverso il vostro smartphone), avrete sicuramente i nervi a fior di pelle: schiacci un tasto e non fa nulla, schiacci una seconda volta e dopo un secondo compare una strisciata di lettere, perdi un attimo la connessione e dici addio alla sessione.

Un’esperienza traumatica.

Probailmente tutto ciò che vi serve è mosh. Mosh lavora con ssh, quindi manterrete il vostro workflow immutato, le chiavi ssh valide, l’unica differenza è che dopo aver avviato la sessione ssh, mosh inizia a comunicare via UDP.

Quando scrivete in locale noterete che alcune parti di testo sono sottolineate, sono quelle che il server non ha ancora ricevuto, ma intanto voi iniziate a vedere quello che avete scritto. Inoltre potete far cadere la connessione quante volte volete perchè è altamente fault tolerant e ricomincia a lavorare come nulla fosse successo appena la connessione si riprende. Allo stesso modo potete mettere in sospensione il portatile.

Per iniziare ad usarlo dovrete solo installare il pacchetto mosh sia sul client che sul server.

# yum install -y mosh 

Il pacchetto e’ gia’ presente sui repository Fedora, mentre per Red Hat e CentOS e’ disponibile sui repository epel.

Il client è disponibile per linux, BSD, Mac, Android. In questa pagina trovate le istruzioni su come installare mosh su qualsiasi dispositivo (lavatrice esclusa).

Tips n Tricks

Per connetterci ad un server diamo il comando:

 # mosh server 

La porta di default che utilizza mosh e’ la udp/6000, ma possiamo specificarne una differente:

 # mosh -p 1234 server 

Se invece dobbiamo specificare qualche parametro ssh differente utiliziamo l’opzione –ssh

 # mosh --ssh "ssh -p 2222" server 

Puo’ essere interessante collegarci ad una sessione di screen sempre attiva.

 # mosh server -- screen -DR 

Seppure lo stia utilizzando da poco piu’ di due settimane, mosh e’ gia’ diventato un tool obbligatorio nella mia cassetta degli attrezzi, molto piu’ fluido di ssh, pur garantendone la sicurezza.

Info about author

Alessandro Lorenzi

RHCE Consultant at Extraordy