OpenSSH 动态增减隧道转发

OpenSSH 动态增减隧道转发

最近做某演示,期间几个 ssh 操作把对方开发给惊到了,我才发现 OpenSSH 有些奇技淫巧并不是所有开发都知道的,特来水上一篇。

几年前翻 OpenSSH 文档时无意中发现,隧道转发可以在现有连接上动态设置,而无需重开或者另开连接。看了看现在中文互联网上关于 ssh 隧道的一些文章,都没见到有关动态设置的说明,都默认开启隧道需另建或重建新的 ssh 连接。其实不然,OpenSSH 客户端/服务端支持在保持连接的同时增删隧道。某些特殊场景下,在技术防护不到位的环境里用好这点可以做出隧道嵌套,端口封锁逃逸等等各种骚操作🤐。

具体操作:已经连上 ssh 时,按一下 Enter,再按 Shift+`(也就是 ~),最后按 Shift+c 调出 OpenSSH 客户端的内置命令行,输入 help 帮助,输出所有隧道操作的命令说明如下。

Snipaste_2021-11-20_19-57-31

接下来该怎么开启各类隧道不必我赘述了,再次调出 ssh 客户端的内置命令行,输入相关参数回车即可。

Snipaste_2021-11-20_20-24-38-1

还有一些其他操作,搜索 "ssh escaping sequences" 即可。例如 Enter~. 强行断开 ssh 连接,Enter~Ctrl+z 把 ssh 客户端置于后台运行等等。

Show Comments