GNU/Linux >> Znalost Linux >  >> Linux

Tmate – sdílejte svůj terminál okamžitě s kýmkoli odkudkoli

Existuje mnoho oblíbených programů pro sdílení vzdálené plochy (například Teamviewer, Guacamole , a TigerVNC atd.) můžete použít, když potřebujete sdílet obrazovku se svými spolupracovníky nebo přáteli. Tyto programy budou sdílet celou vaši obrazovku s ostatními. Pokud však chcete sdílet pouze terminál, můžete použít pouze Tmate . Je to vlastně fork Tmux , terminálový multiplexer, který vám umožňuje používat několik programů v jednom terminálu. Oba mohou být nainstalovány na stejném systému současně. Tmate je něco jako Teamviewer pro váš terminál.

Pro ty, kdo by byli zvědaví, Tmate vytvoří zabezpečené připojení přes SSH k tmate.io a pro každou relaci vygenerujte náhodnou adresu URL. Adresu URL můžete sdílet s někým, komu důvěřujete, a pokud je připojení aktivní, může Terminál používat jako způsob, jakým používá svůj vlastní Terminál. Je nejlepší pro spolupráci na společných projektech, ladění projektu s týmem vývojářů nebo získání technické podpory přes vzdálenou síť. Tmate podporuje všechny populární operační systémy, včetně GNU/Linux, Mac OS X a BSD systémů.

V tomto tutoriálu vysvětlím, jak nainstalovat a používat Tmate v operačních systémech podobných Unixu.

Tmate – sdílejte svůj terminál okamžitě s kýmkoli a kdekoli

Instalace Tmate

Pro Arch Linux a jeho deriváty jako Antergos, Manjaro Linux, Tmate jsou k dispozici v AUR , takže jej můžete nainstalovat pomocí pomocných programů AUR, jako je Yay .

$ yay -S tmate

Pro Fedora , spusťte následující příkaz pro instalaci Tmate.

$ sudo dnf install tmate

Na Ubuntu , a jeho deriváty, jako je Linux Mint, můžete nainstalovat pomocí následujícího PPA.

$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:tmate.io/archive
$ sudo apt-get update
$ sudo apt-get install tmate

Na Ubuntu 18.04 LTS verze, povolte vesmírné úložiště a nainstalujte Tmate jako níže.

$ sudo add-apt-repository universe
$ sudo apt install tmate

Na FreeBSD :

# pkg install tmate

OpenBSD:

# pkg_add tmate
Doporučené staženíZdarma e-kniha:„Naučte se Linux za 5 dní“

Nakonfigurujte SSH

Než začneme používat Tmate, musíme vytvořit pár klíčů SSH. Protože program tmate naváže zabezpečené připojení SSH s tmate.io pomocí místního páru klíčů SSH.

Vytvořme pár klíčů SSH pomocí příkazu:

$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/sk/.ssh/id_rsa): 
Created directory '/home/sk/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/sk/.ssh/id_rsa.
Your public key has been saved in /home/sk/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:DL3+rYrYtXYHxyFfDSRAsz4470wAQ+V/iW+sd5/fnA0 [email protected]
The key's randomart image is:
+---[RSA 2048]----+
| ....+.... |
| . o o .. |
| + o . o |
| = =..... .|
| S =+oo |
| . +.=+ |
| o oo+ E |
| o o.*.+o .o=|
| . o.oo*+.. +B|
+----[SHA256]-----+

Pokud nevytvoříte, ve spodní části okna Terminálu se zobrazí následující upozornění.

[Tmate] Reconnecting... (SSH keys not found. Run  'ssh-keygen' to create keys and try again.)

Využití Tmate

Jakmile vytvoříte pár klíčů SSH, spusťte Tmate spuštěním následujícího příkazu z vašeho terminálu:

$ tmate

Pokud jste při vytváření páru klíčů SSH zadali přístupovou frázi, možná ji budete muset zadat k navázání relace Tmate.

Po zahájení relace Tmate sdílejte ID připojení s kýmkoli, s kým chcete sdílet svou obrazovku. Můžete jej sdílet s libovolným počtem lidí, kterým důvěřujete. Nemusí být ve stejné síti nebo nemusí používat stejný operační systém. Nemusí mít ani nainstalovaný tmate nebo tmux.

Takto vypadají relace Tmate.

Tmate session

Jak vidíte na výše uvedeném snímku obrazovky, ve spodní části obrazovky je ID relace SSH (řetězec náhodných znaků). Pro připojení stačí zkopírovat a sdílet s ostatními. Upozorňujeme, že toto ID po několika sekundách zmizí. Stále však můžete zobrazit ID relací pomocí příkazu:

$ tmate show-messages

Ukázkový výstup by byl:

Fri Aug 11 17:18:48 2017 [tmate] Connecting to ssh.tmate.io...
Fri Aug 11 17:18:49 2017 [tmate] Note: clear your terminal before sharing readonly access
Fri Aug 11 17:18:49 2017 [tmate] web session read only: https://tmate.io/t/ro-UVgrzHg2BVanPXZnt6JtlpU3V
Fri Aug 11 17:18:49 2017 [tmate] ssh session read only: ssh [email protected]
Fri Aug 11 17:18:49 2017 [tmate] web session: https://tmate.io/t/LVWgMSX2wNhBLdrLfxtcX00rk
Fri Aug 11 17:18:49 2017 [tmate] ssh session: ssh [email protected]

Jak vidíte ve výše uvedeném výstupu, můžete buď sdílet terminál prostřednictvím relace SSH nebo webové relace pomocí příslušných ID relace. Můžete také sdílet buď relaci pouze pro čtení nebo relaci čtení a zápisu .

Velmi velmi důležitá poznámka: Mějte prosím na paměti, že pokud jste zadali ID relace pro čtení a zápis (buď SSH nebo Web), uživatel může dělat cokoli. Protože jste mu právě udělili přístup k systému s právy sudo . Důrazně vám tedy doporučuji zadat ID relace pouze pro čtení .

Když sdílíte relaci pouze pro čtení, nechcete vzdáleným uživatelům dovolit, aby viděli ostatní ID relace pro čtení a zápis. Takže před poskytnutím ID relace uživatelům stačí vymazat terminál .

Připojte se prostřednictvím relací SSH

Pro ty, kteří chtějí sdílet terminál prostřednictvím relací SSH, poskytněte ID relace SSH vzdáleným uživatelům.

Vzdálení uživatelé například zadají následující příkaz pro přístup k relaci Tmate pouze pro čtení z jejich systému.

$ ssh [email protected]

V relaci pouze pro čtení mohou váš terminál zobrazit pouze vzdálení uživatelé. Nemohou spouštět žádné příkazy.

Chcete-li sdílet relaci čtení a zápisu, příkaz je:

$ ssh [email protected]

Nyní mohou vzdálení uživatelé přistupovat k vašemu terminálu v režimu čtení a zápisu. To znamená, že mohou spustit jakýkoli příkaz na vašem terminálu. Všechny příkazy, které zadávají ve vzdálené relaci, lze také zobrazit z vašeho místního terminálu.

Připojte se prostřednictvím webových relací

Pro ty, kteří chtějí sdílet Terminál prostřednictvím webového prohlížeče, stačí dát webovou adresu URL ostatním, aby se připojili.

Řekněme například, že pro sdílení čtení a zápisu bych dal tuto adresu URL svým spolupracovníkům – https://tmate.io/t/LVWgMSX2wNhBLdrLfxtcX00rk

Když zadají výše uvedenou adresu URL, zobrazí se jim následující obrazovka.

Webová relace Tmate

Znovu vás varuji, abyste nikomu nedávali ID relace pro čtení a zápis, pokud to není nezbytně nutné. Sdílejte relace čtení a zápisu pouze s důvěryhodnými osobami.

Doporučené čtení:

  • Reptyr – přesunutí běžícího procesu z jednoho terminálu do druhého bez jeho uzavření

Práce v relaci tmate je úplně stejná jako v tmux. Tmate si můžete představit jako reverzní ssh tunel přístupný odkudkoli. Chcete-li relaci ukončit, zadejte exit . Další podrobnosti naleznete na manuálových stránkách.

$ man tmate

Linux
  1. Zaznamenejte svou terminálovou relaci pomocí Asciinema

  2. Jaký je váš oblíbený emulátor terminálu?

  3. Jak se okamžitě odhlásit z Ubuntu z terminálu

  1. Čtěte a zapisujte data odkudkoli s přesměrováním v terminálu Linux

  2. Jaký je váš oblíbený trik s linuxovým terminálem?

  3. Jaký je váš oblíbený emulátor terminálu Linux?

  1. Spravujte svůj kalendář z terminálu Linux pomocí příkazu konsolekalendar

  2. Tisk souborů z terminálu Linux

  3. Vydejte se na dobrodružství ve svém linuxovém terminálu