SSH ProxyCommand 的问题

Problems with SSH ProxyCommand

我在使用 ssh proxy 命令时遇到了一些问题。代理上的身份验证工作正常,但是当我想登录到远程主机时它失败了。问题似乎是,代理尝试使用我的本地 rsa_key 登录,而不是使用存储在代理上的密钥。有办法解决这个问题吗?

这就是我想要的:

本地 -- 本地 rsa --> 代理 -- 代理 rsa --> 主机

我使用的配置文件:

Host 192.168.178.32
HostName 192.168.178.32
User user
Port 22
IdentityFile ~/.ssh/id_rsa.pub

Host 192.168.178.30
HostName 192.168.178.30
User user
Port 22
IdentityFile home/user/.ssh/id_rsa.pub
ProxyCommand ssh -W %h:%p -F ssh_config -p 22 192.168.178

The problem seems to be, that the proxy tries to login with my local rsa_key and not with the key stored on the proxy.

是的。确实如此。这是设计使然。您不想将私钥复制到代理。代理命令将始终从您的本地主机进行身份验证。

有两条出路:

  • 将密钥复制到您的本地主机并配置它以供使用。

  • 不要使用 ProxyCommand 并执行简单的 ssh:

    ssh -t proxy ssh host
    

    它将使用来自第二个主机的身份验证