我在使用ssh proxycommand时遇到了一些问题。代理上的身份验证工作正常,但是当我想登录到远程主机时它失败了。问题似乎是,代理尝试使用我的本地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
答案 0 :(得分:3)
问题似乎是,代理尝试使用我的本地rsa_key登录,而不是使用存储在代理上的密钥登录。
是。确实如此。这是设计的。您不希望将私钥复制到代理。代理命令将始终从您的本地主机进行身份验证。
有两种出路:
将密钥复制到本地主机并配置它以供使用。
请勿使用ProxyCommand
并执行简单的ssh
:
ssh -t proxy ssh host
它将使用第二台主机的身份验证