使用 ssh 隧道跳转 scp 和 sshfs

使用 ssh 隧道跳转 scp 和 sshfs

这是我所拥有的:台式机和笔记本电脑都位于防火墙后面,两者都可以连接到ssh功能强大的服务器。

这是我能做的:通过在桌面上运行此命令来创建从服务器到桌面的隧道

ssh userS@SERVER -R 2224:localhost:22 -fN -p 2222

然后我可以ssh从笔记本电脑到服务器(启用了 pkey),然后通过运行从那里到桌面

ssh userS@SERVER -p 2222 ssh userD@localhost -p 2224

这就是我想做的:使用scpsshfs和相关连接从笔记本电脑到台式机。我想我应该能够使用ssh -L笔记本电脑来完成此操作,但还没有找到正确的术语。我尝试过(从笔记本电脑)

ssh userS@SERVER -p 2222 -fN -L 2225:localhost:2224
ssh userD@SERVER -p 2225

认为这会让我直接登录到桌面,但它不起作用,因此我在这里提出问题。这次尝试拒绝了连接,因为服务器上的 ssh 端口是 2222。当我尝试使用上述命令将 2225 替换为 2222 时,它尝试让我登录到服务器,就像userD通常没有任何隧道一样。我走在正确的轨道上吗ssh -L?我怎样才能让它正常工作?如果您认为我遗漏了任何重要信息,请告诉我,我会尽力澄清。谢谢。

答案1

下面的命令有效吗?

% ssh -o ProxyCommand='ssh -p 2222 userS@SERVER /usr/bin/nc %h %p' userD@DESKTOP

如果是这样,您可以将代理命令添加到您的文件中,~/.ssh/config以便更轻松地拨打scpsshfs通话。

相关内容