我正在尝试将多跳ssh命令放入ssh .ssh / config文件中。
这是我的连接图:笔记本电脑(我在这里)------> userver ------->工作站
我已经将ssh的公共rsa密钥放入了“ userver”和“ workstation”中。此时,我可以通过键入以下行来连接:
ssh -A -t userserver@userver ssh -A userworkstation@workstation
但是,我希望能够使用〜/ .ssh / config中的配置文件的功能来达到相同的效果,但是使用一个简单的命令,这也将允许我使用“ scp”进行快速复制。唯一的问题是,“ userver”没有“ nc”命令,并且我那里没有超级用户,仅能控制我的主文件夹。不过,我尝试了一些方法:
我的笔记本电脑(〜/ .ssh / config)中有以下配置文件:
# laptop config file
Host userver
Hostname userver_hostname
port 22
User server_user
也是用户版本中的另一个配置文件(〜/ .ssh / config)
# userver config file
Host workstation
Hostname workstation_hostname
port 22
user workstation_username
有了这个配置文件,我可以连接为
ssh -A -t userver ssh -A workstation
这是一个改进,但还不够。我尝试在笔记本电脑配置中添加另一个主机,如下所示:
Host hop
ProxyCommand ssh -A -t userver ssh -A workstation
然后,当我做
ssh hop
我得到以下输出错误,并且无法连接:
Pseudo-terminal will not be allocated because stdin is not a terminal.
Pseudo-terminal will not be allocated because stdin is not a terminal.
-bash: line 1: $'SSH-2.0-OpenSSH_6.4\r': command not found
有任何想法吗?