Úvod
Mosh , což je zkratka pro Mobile Shell je aplikace příkazového řádku, která se používá pro připojení k serveru z klientského počítače přes internet. Lze jej použít jako SSH a obsahuje více funkcí než Secure Shell .
Je to aplikace podobná SSH, ale s dalšími funkcemi. Aplikaci původně napsal Keith Winstein pro operační systém typu Unix a vydaný pod GNU GPL v3.
Funkce Mosh
Aplikace vzdáleného terminálu, která umožňuje roaming , podporuje přerušované připojení a poskytuje inteligentní místní odezvu a editaci řádků uživatelských kláves.
Mosh je náhrada za interaktivní SSH terminály. Je robustnější a citlivější, zejména přes Wi-Fi, mobilní a dálková spojení.
Mosh je bezplatný software dostupný pro GNU/Linux, BSD, macOS, Solaris, Android, Chrome a iOS.
Použití
Nahrazuje interaktivní SSH. Okamžitá odezva na stisk klávesy, odolná vůči roamingu. Budete ale potřebovat funkční UDP.
Jak Mosh funguje
Protokoly vzdáleného prostředí tradičně fungují tak, že přenášejí bajtový proud ze serveru ke klientovi, který má být interpretován klientským terminálem. (To zahrnuje TELNET, RLOGIN a SSH.) Mosh funguje jinak a na jiné vrstvě. S Mosh server i klient udržují snímek aktuálního stavu obrazovky. Problém se stává synchronizací stavu:dostat klienta na nejnovější obrazovku na straně serveru co nejefektivněji.
Toho bylo dosaženo pomocí nového protokolu nazvaného State Synchronization Protocol , pro kterou je Mosh první aplikací. SSP běží přes UDP a synchronizuje stav libovolného objektu z jednoho hostitele na druhého. Datagramy zašifrované a ověřené pomocí AES-128 v režimu OCB3. Zatímco SSP se stará o síťový protokol, je to implementace synchronizovaného objektu, která definuje konečnou sémantiku protokolu.
Mosh spouští dvě kopie SSP, jednu v každém směru připojení. Připojení od klienta k serveru synchronizuje objekt, který představuje klíče zadané uživatelem, a se sémantikou podobnou TCP. Připojení ze serveru ke klientovi synchronizuje objekt, který představuje aktuální stav obrazovky, a cílem je vždy přenést klienta do nejnovějšího stavu na straně serveru, případně přeskočit mezilehlé snímky.
Protože SSP pracuje na vrstvě objektů a může řídit rychlost synchronizace (jinými slovy, rychlost snímků), nemusí posílat každý bajt, který obdrží z aplikace. To znamená, že Mosh může regulovat rámce tak, aby nezaplňovaly síťové vyrovnávací paměti, přičemž zachovává odezvu připojení a zajišťuje, že Control-C vždy funguje rychle. Protokoly, které musí odeslat každý bajt, to nemohou udělat.
Instalace Mosh Shell v Linuxu
V Debianu , Ubuntu a Máta stejně jako systémy můžete snadno nainstalovat Mosh balíček s pomocí správce balíčků apt-get
$ sudo apt-get update
$ sudo apt-get install mosh -y
A v RHEL /CentOS /Fedora distribuce založené na distribucích, musíte zapnout úložiště třetí strany s názvem EPEL, abyste mohli nainstalovat mosh z tohoto úložiště pomocí správce balíčků yum
# yum update
# yum install mosh
Na Fedoře verze, musíte k instalaci mosh použít správce balíčků dnf
# dnf install mosh
V systému Arch/Manjaro Linux:
# pacman -S mosh
A v OpenSuse Linux:
$ sudo zypper in mosh
Na Gentoo :
# emerge net-misc/mosh
Jak se používá Mosh Shell?
1. Zkuste se přihlásit ke vzdálenému linuxovému serveru pomocí mosh shellu.
$ mosh [email protected]
Zadejte heslo
2. Předpokládejme, že výchozí port SSH 22 se změnil na port 70 , v tomto případě můžete definovat vlastní port pomocí ‚-p ‘ switch with mosh.
$ mosh [email protected] --ssh="ssh -p 70"
3. Zkontrolujte verzi nainstalovaného Mosh.
$ mosh --version
4. Můžete zavřít mosh session typu „exit ‘ ve výzvě.
$ exit
5. Mosh podporuje mnoho možností, které můžete vidět jako:
$ mosh --help
Poznámky o Mosh
Mosh vyžaduje další předpoklady, například umožnit přímé připojení přes UDP, což SSH nevyžadovalo.
Dynamická alokace portů v rozsahu 60000–61000 . Je přidělena první otevřená pevnost. Vyžaduje jeden port na připojení
Výchozí alokace portů je vážným bezpečnostním problémem, zejména v produkci.
Scrollback není podporován a žádná podpora pro ssh-agent forwarding.