MENU

终端复用技术的学习记录

May 27, 2020 • Read: 976 • 记录阅读设置

0x00 前言

终端复用技术的学习与记录,这里主要介绍了两款,分别是 tmuxscreen

0x01 演示

我们通常在操作Linux的时候会遇到这种情况,比如因为某些原因在操作Linux虚拟终端进行下载的时候突然会话卡了或者直接断了。

或者关闭终端,但是进程还想让他继续运行,这时候虽然可以使用nohup但是还是不是很方便。

而我们在渗透测试的时候,在VPS上需要搭建MSF、CS等远程工具,这时候会遇到一个问题,运行这些工具在关闭终端后不能继续运行。

比如MSF监听器,如何建立一个持久的监听器让它随时接收我们的session。

或者CS的teamserver长期的运行在服务器上。

这里也就需要用到终端复用技术。

首先先来mark下终端复用技术的介绍:

终端复用器(Terminal Multiplexer)是用于复用多个虚拟终端的应用软件,允许用户在一个终端窗口中访问多个单独的登陆会话,或者从终端分离和重新连接会话。

常用的终端复用器应该有这些: Emacs, Vim, Byobu, DVTM, mtm, Neercs, Terminator, Tmux, Tmuxinator, Twin, Screen。

下面就介绍 tmuxscreen 这两款工具。

screen

安装:

CentOS/RedHat/Fedora

yum -y install screen

Ubuntu/Debian

apt-get -y install screen

常用命令:

查看所有会话:

screen -ls

创建会话(-m 强制):

screen -dmS name

image-20200527145959000.png

这里就已经创建了一个名为name的会话。

进入会话:

screen -r name

远程deatch某个会话(暂时离开某session)

screen -d (screen -d yourname )

退出当前的会话保持程序运行

ctrl+a+d

如果想杀死一个已经detached的screen会话,可以使用以下命令:

screen -X -S [session you want to kill] quit

这里使用命令kill掉我们刚才创建的会话。成功!

screen -X -S 1488 quit

image-20200527150258204.png

tmux

关于tumux看了阮一峰大佬的一篇文章tmux使用教程,很详细。

安装:

# Ubuntu 或 Debian
$ sudo apt-get install tmux

# CentOS 或 Fedora
$ sudo yum install tmux

# Mac
$ brew install tmux

常用命令:

tmux new -s session1     # 新建会话

tmux ls     # 终端环境查看会话列表

tmux a -t session1     # 从终端环境进入会话

tmux kill-session -t session1     # 销毁会话

tmux rename -t old_session_name  new_session_name      # 重命名会话

ctrl+b s:     # 会话环境查看会话列表

ctrl+b d:     # 退出会话,回到shell的终端环境 //tmux detach-client

ctrl + b $:     # 重命名会话 (在会话环境中)

有关操作可以学习下阮一峰大佬的文章。

0x02 总结

这两个工具都很好用,感觉tmux可能要更强大一点。

但是对我个人而言,screen可能就够用了,常用做MSF监听器的持久化接收session。还有其他很多用途,大佬们可以研究下,欢迎与本人交流各种安全技术。

原文作者:Keefe

原文链接:终端复用技术的学习记录

版权声明:本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可