所以我基本上是想这么做:
ssh bob2@35.192.152.35 -t ssh bob2@test-vm如果我只是把它放到终端中,那么上面的操作就很好了,但是我很难通过.ssh配置文件复制它。
下面是配置文件中的内容:
Host bastion
HostName 35.192.152.35
User bob2
Host test-vm
User bob2
FOrwardAgent yes
ProxyCommand ssh bastion nc %h %p 2> /dev/null但是,它会出现一个错误,说“权限被拒绝”,无效的公钥文件?我从这篇文章中得到了以下内容:https://unix.stackexchange.com/questions/124078/how-to-ssh-to-a-server-using-another-server-with-key-from-the-second-server
不管怎么说,它对那家伙有效,但对我却不起作用。我还尝试在sshd_chroot配置中允许代理转发和TCP转发,也允许所有各方(原始、堡垒和服务器)进行代理转发,但这并没有什么区别。
如果强制指定标识路径:
Host bastion
HostName 35.192.152.35
User bob2
IdentityFile /Users/bob/.ssh/id_rsa
Host test-vm
User bob2
FOrwardAgent yes
ProxyCommand ssh bastion nc %h %p 2> /dev/null
IdentityFile /home/bob2/.ssh/id_ed25519然后,它产生了相同的错误,除了说它找不到目录“/home/bob2 2/..ssh/id_id 25519”之外
有人有什么想法吗?
发布于 2022-04-27 10:00:09
您似乎希望您的配置让test在堡垒中查找密钥。所以我建议:
发布于 2022-10-21 20:37:37
下面对我有用..。与您的基本相同,但我确实指定了最终目的地的IP地址(可能与您的情况无关),并且我不得不将密钥从堡垒复制到本地主机,因为我的ssh_config正在这里查找密钥文件,而不是在堡垒的中间位置:
==== added to .ssh/config ====
Host mybastion
HostName 133.35.41.9
User bastuser
IdentityFile /Users/bchapman/.ssh/bast_priv.key
Host mytarget
HostName 109.0.1.38
ProxyCommand ssh -q -W %h:%p mybastion
User targuser
IdentityFile /Users/bchapman/.ssh/targ_priv.key
==============在此之后,我就可以很好地解决mytarget、scp本地文件mytarget:等问题。
https://serverfault.com/questions/1099344
复制相似问题