SFTP 通过其他服务器连接

SFTP 通过其他服务器连接

我想连接到我所在大学的服务器中的帐户。在那里我只需要做

 “ssh user@FinalServer/home/user” 

或者使用以下方式创建文件夹

 “sftp://user@FinalServer/home/user”.

但当我在家时,问题就出现了。在这里我必须先连接到具体端口的具体服务器,然后再连接到 FinalServer。

 1st. “ssh user@IntermediateServer:54022”
 2nd. “ssh user@FinalServer/home/user”

要执行 sftp,我必须先执行到中间服务器,然后再执行到最终服务器。如果可能的话,我想创建一个像第一个例子那样的文件夹,但我不知道怎么做。

我正在寻找 Linux 和 Windows 中的解决方案。

我正在尝试使用 Putty 或 WinSCP 做一些事情,但我不知道怎么做。非常感谢,抱歉我的英语不好。

答案1

如果您的中间主机允许 TCP 转发,您可以实现您想要的功能,但仍需要与中间服务器建立 ssh 连接。这两个命令都可以从您家中运行:

ssh -f -p 54022 user@IntermediateServer -L 2000:FinalServer:22 -N
ssh -p 2000 user@localhost

第一个命令通过端口 54022 的中间服务器,从端口 2000 的家庭电脑到端口 22 的最终服务器(SSH 的标准)建立隧道。启动第一个命令并检查家庭电脑上是否有新的监听端口(netstat -na | grep LIST | grep 2000),如果有,则表示隧道已启动并运行。只需执行命令,就好像您的本地电脑是最终服务器(端口 2000)一样

注意:我使用端口 2000,因为我假定您的电脑上正在运行 ssh 服务器,但您可以使用任何您想要的端口。

相关内容