如果我在终端中通过 ssh 进入新主机,然后通过 ssh 进入另一台主机,然后再进入另一台主机等等,除了递归退出并查看最终位置之外,还有其他方法可以确定这个主机链吗?
答案1
有名为 SSH_CLIENT 和 SSH_CONNECTION 的变量显示在你当前的 shell 中您从哪里 ssh 以及您从哪个 IP 进入,但这只显示最后一个连接。您可以向每个 ssh 客户端连接发送命令(例如<RET><RET>~C
打开命令行),但这仅限于几件事。也许您最感兴趣的是~#
,它显示连接信息,但不显示主机。
如果您能记住~
在 之后按了多少次<RET><RET>
,则可以从链的末尾开始将连接 N 置于后台,然后每次依次回显 $SSH_CONNECTION 以查看它去了哪里。当您返回主机时,您需要使用 再次将它们全部置于前台fg
。
我想我要问您的问题是,为什么您需要知道并且您需要经常知道吗?
答案2
运行netstat -t -n|grep 22
(如果你更改了端口号,请将 22 替换为你的 ssh 服务器的端口号),至少你知道你来自的主机的 IP 地址。或者尝试who