正确的 .ssh/config 设置跳 ssh
correct .ssh/config setup to hop ssh
我有一个 2-deep ssh 网络。我有服务器 myserv.co.uk
和服务器 B
。我通过 .ssh/config 文件给 myserv.co.uk
一个别名,叫做 A
。服务器 A 受密码保护,一旦进入服务器 A,我就可以 ssh B
而无需使用密码。
我在本地机器上使用 ssh-keygen
并复制到服务器 A 上,这样我就可以成功地执行 ssh A
而不必使用密码。
一切顺利。但是我需要 ssh/scp 直接进入服务器 B。有很多关于如何做到这一点的东西,我已经尝试实现。我有以下 .ssh/config
:
Host A
User first.last
Hostname myserv.co.uk
Host B
User first.last
ProxyCommand ssh -W B:22 A
所以当我这样做时 ssh B
我被要求输入密码。这不应该发生在服务器 A 中,默认情况下我可以在没有密码的情况下通过 ssh 连接到服务器 B。这是输出:
$ ssh B
Welcome to myserv
This system is for authorised users, if you do not have authorised access
please disconnect immediately.
Password:
我输入了服务器 A 的密码,这成功了。我认为是这种情况,因为它是用户 first.last
.
的密码
然而,假设在服务器 A 中,我可以在没有密码的情况下通过 ssh 进入服务器 B,并且我可以使用 keygen 从本地 ssh 到服务器 A,为什么我在执行 ssh B
?
您是否将自己的 public 密钥复制到两台服务器上的授权密钥?
你可以使用 ssh-copy-id
我有一个 2-deep ssh 网络。我有服务器 myserv.co.uk
和服务器 B
。我通过 .ssh/config 文件给 myserv.co.uk
一个别名,叫做 A
。服务器 A 受密码保护,一旦进入服务器 A,我就可以 ssh B
而无需使用密码。
我在本地机器上使用 ssh-keygen
并复制到服务器 A 上,这样我就可以成功地执行 ssh A
而不必使用密码。
一切顺利。但是我需要 ssh/scp 直接进入服务器 B。有很多关于如何做到这一点的东西,我已经尝试实现。我有以下 .ssh/config
:
Host A
User first.last
Hostname myserv.co.uk
Host B
User first.last
ProxyCommand ssh -W B:22 A
所以当我这样做时 ssh B
我被要求输入密码。这不应该发生在服务器 A 中,默认情况下我可以在没有密码的情况下通过 ssh 连接到服务器 B。这是输出:
$ ssh B
Welcome to myserv
This system is for authorised users, if you do not have authorised access
please disconnect immediately.
Password:
我输入了服务器 A 的密码,这成功了。我认为是这种情况,因为它是用户 first.last
.
然而,假设在服务器 A 中,我可以在没有密码的情况下通过 ssh 进入服务器 B,并且我可以使用 keygen 从本地 ssh 到服务器 A,为什么我在执行 ssh B
?
您是否将自己的 public 密钥复制到两台服务器上的授权密钥?
你可以使用 ssh-copy-id