ssh 代理使用 -W host:port

ssh 代理使用 -W host:port

我正在尝试使用中间机器连接到远程主机,但我做错了什么而且不确定是什么。

我已将以下行添加到中间框 /etc/ssh/sshd_config:

Match User deploy
PermitOpen  any
AllowTcpForwarding yes
ForceCommand echo 'This account can only be used for deployments'

我可以从中间盒通过 ssh 连接到目标系统,没有任何问题,但我希望能够执行如下所示的命令通过我的代理盒进行连接:

ssh deploy@dev-linux-03 -W TARGET_IP:22

但我收到了不同的回应:

 SSH-2.0-OpenSSH_4.3

 Protocol mismatch.

我遗漏了什么明显的事吗?

答案1

您指定了错误的命令。输入该命令的正确方法应如下:

ssh -o ProxyCommand='ssh -W %h:%p user@intermediate-host' user@target-host

如果你经常需要这个,你可以像这样添加它~/.ssh/config

Host target-host
    User user
    ProxyCommand ssh -W %h:%p user@intermediate-host

然后您只需输入ssh target-host即可连接。

相关内容