小编lab*_*irc的帖子

ssh 多跳...使命令适应 ssh 配置文件

我正在尝试将我的多跳 ssh 命令放入 ssh .ssh/config 文件中。

这是我的连接图:笔记本电脑(我在这里)------> 用户-----> 工作站

我已将 ssh 公共 rsa 密钥放入“userver”和“workstation”。此时,我可以通过键入以下行进行连接:

ssh -A -t userserver@userver ssh -A userworkstation@workstation
Run Code Online (Sandbox Code Playgroud)

然而,我希望能够使用 ~/.ssh/config 中配置文件的功能来达到相同的效果,但使用一个简单的命令,这也允许我使用“scp”进行快速复制。唯一的问题是“userver”没有“nc”命令,而且我没有超级用户,只能控制我的主文件夹。不过,我尝试了一些事情:

我的笔记本电脑中有这个配置文件(~/.ssh/config):

# laptop config file
Host userver
Hostname userver_hostname
port 22
User server_user
Run Code Online (Sandbox Code Playgroud)

还有用户中的另一个配置文件(~/.ssh/config)

# userver config file
Host workstation
Hostname workstation_hostname
port 22
user workstation_username
Run Code Online (Sandbox Code Playgroud)

有了这个配置文件,我可以连接为

ssh -A -t userver ssh -A workstation
Run Code Online (Sandbox Code Playgroud)

这是一种改进,但还不够。我尝试在我的笔记本电脑配置中添加另一个主机,如下所示:

Host hop
ProxyCommand ssh -A -t userver ssh -A workstation
Run Code Online (Sandbox Code Playgroud)

然后,当我做

ssh hop
Run Code Online (Sandbox Code Playgroud)

我得到以下错误输出并且无法连接:

Pseudo-terminal will not be allocated because stdin …
Run Code Online (Sandbox Code Playgroud)

networking linux ssh

11
推荐指数
2
解决办法
1万
查看次数

标签 统计

linux ×1

networking ×1

ssh ×1