网站搜索

Tmate - 与 Linux 用户安全共享 SSH 终端会话


tmate 是 tmux(终端多路复用器)的克隆,它通过 SSH 连接提供安全、即时且易于使用的终端共享解决方案。它构建在tmux之上;您可以在同一系统上运行两个终端模拟器。您可以使用 tmate.io 的官方服务器或托管您自己的 tmate 服务器。

下图显示了tmate的不同组件的简化架构图(从项目网站获得)。

Tmate 是如何工作的?

当启动Tmate时,它会首先通过libssh与后台的tmate.io服务器建立ssh连接。连接建立后,将为每个会话生成 150 位会话令牌。受信任的用户可以使用此生成的令牌来访问终端会话。

如何在 Linux 中安装 Tmate

Tmate 可以使用包管理器从大多数 Linux 发行版的默认存储库进行安装,如图所示。

在基于DebianUbuntu的Linux发行版中,使用以下PPA安装Tmate

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

Fedora 发行版上,使用以下 dnf 命令。

sudo dnf install tmate

Arch Linux 上,您可以从 AUR 安装它,如图所示。

yaourt -S tmate

openSUSE中,您可以使用zypper命令来安装它。

sudo zypper in tmate

Gento上,您可以使用emerge来安装它。

sudo emerge tmate

在其他Linux发行版(例如CentOS和RHEL)上,您可以从https://github.com/nviennot/tmate下载源代码并使用以下命令进行编译和安装。

./autogen.sh 
./configure 
make     
sudo make install

如何使用 Tmate 共享您的终端

安装tmate后,它会同时使用~/.tmux.conf~/.tmate.conf配置文件。与您共享终端的每个人都将使用您的 tmux 配置和键绑定。终端被强制为 256 色和 UTF-8,因此您不需要像使用 tmux 时那样传递 -2。

要启动tmate,请运行以下命令,这使得程序通过libssh在后台与tmate.io(或您自己的服务器)建立ssh连接

tmate 

然后,您可以使用生成的令牌 ID(例如:在本例中为[email )与您的好友共享 ssh 会话连接参数,以便他们可以访问您的终端。

要访问您的终端,您的朋友/同事需要在他们的终端中运行以下 ssh 命令。

ssh [email 

要显示 tmate 的日志消息(包括 ssh 连接字符串),请运行:

tmate show-messages

tmate 还允许您共享终端的只读视图。可以使用 tmate show-messages 检索只读连接字符串,如上面的屏幕截图所示。

要终止程序,请运行exit命令。

exit

有关 tmate 如何工作、如何将其作为守护进程运行以及托管您自己的 tmate 服务器的更多信息,请访问项目网站:https://tmate.io/。

Tmatetmux 的一个分支,提供安全、即时的终端共享解决方案。在本文中,我们展示了如何在 Linux 中安装和使用 tmate,并使用它与您的朋友共享您的终端。请随时通过下面的反馈表与我们分享您的想法。