我想从工作中的远程机器复制一些文件,但我无法直接 ssh 到该机器,
我通过 SSH 代理登录,它显示要连接的主机菜单,我选择我想要的机器,然后使用我的密码登录。
是否有办法使用 SCP 或 SSH 或其他方式将文件从远程复制到本地主机?
答案1
假设两个跳跃都使用 SSH,您可以使用端口转发在外部跳跃的 SSH 内部隧道 SSH 并直接访问内部网络。
Host MAKESOCKS.internal-network
HostName ssh-gate.internal-network
DynamicForward localhost:10022
Host *.internal-network
ProxyCommand connect -S 127.0.0.1:10022 %h %p
使用方式如下:
ssh -f -N MAKESOCKS.internal-network
ssh host.internal-network
该connect
命令位于connect-proxy
Debian/Ubuntu 上的包中。
答案2
假设你的远程主机名为 example.com,你可以像这样设置“主” ssh 连接
ssh -Mt -S /tmp/ssh [email protected]
然后你就可以像这样将你的 scp 搭载到上面
scp -o "ControlPath /tmp/ssh" <src_file> [email protected]:/<target_file>
编辑:啊。我没有仔细阅读你的问题。你是通过单独的代理连接的。在这种情况下,另一个答案中建议的端口转发技术可能更合适。