在远程计算机上重新使用 SSH 连接

在远程计算机上重新使用 SSH 连接

有 3 个 UNIX 盒子:

  • 客户
  • 弹跳箱
  • 偏僻的

REMOTE 计算机仅允许来自弹跳盒的 SSH 连接。在 BOUNCE 框中,我的本地 SSH 配置文件中有以下内容:

Host REMOTE
  HostName remote.domains.tld
  ControlPath ~/.ssh/master-r@%h
  ControlMaster auto
  ControlPersist 4h
  ForwardAgent yes
  IdentityFile ~/.ssh/id_rsa

上面的内容允许我重用单个连接,这样我就不必每次需要另一个控制台时都登录等等......

如果不使用 SSH 隧道(即ssh -L 22:REMOTE:22 user@BOUNCE),我希望能够从 CLIENT 连接到 REMOTE 并重新使用 BOUNCE 上已打开的连接,这样我就不需要每次打开新控制台时都重新进行身份验证。

这种事可能吗?

答案1

ProxyCommand通过使用 CLIENT 和 BOUNCE 之间的可重用连接以及指令,您也许能够实现您想要做的事情。

在客户端的文件中~/.ssh/config

Host REMOTE
  HostName remote.domains.tld
  ProxyCommand ssh BOUNCE -W %h:%p
  ControlPath ~/.ssh/master-%r@%h:%p
  ControlMaster auto
  ControlPersist 4h

相关内容