22

是否可以通过 SSH 隧道执行以下操作...

  1. Host-1 与远程服务器建立 SSH 连接
  2. 我希望登录远程服务器并在 Host-1 上通过 SSH 执行命令

Host-1 是我无法直接访问的设备。Host-1 设置为通过 cron 自动建立到远程服务器的 SSH 连接。在 Host-1 与远程服务器建立 SSH 连接的任何时候,我都希望登录到远程服务器以便通过 SSH 对 Host-1 执行维护。

如果可能的话,我正在寻找一个如何工作的例子。

4

1 回答 1

35

像这样:

host1$  ssh -N -R 8822:localhost:22 remote.host.com

可选的 -N 表示“不执行命令”(有助于防止因放置远程 shell 而引起的事故。)

现在从远程,您可以像这样通过 SSH 连接到 host1:(远程端口 8822 转发到 host1,但仅在环回接口上。)

remote$ ssh -p 8822 localhost

对于额外的信用,您可以将转发导出到全世界,允许任何人通过点击远程的端口 8822 来访问 host1。(注意额外的初始冒号)

host1$  ssh -N -R :8822:localhost:22 remote.host.com
于 2013-04-13T03:42:34.020 回答