使用WinSCP通过隧道获取文件

时间:2014-03-29 22:19:38

标签: linux ssh portforwarding winscp

我尝试使用WinSCP抓取的节点上有一个文件。通常,要通过我的Linux VM访问该文件,我使用命令

ssh -p 2200 -L 2020:py-01:22 foo@university.edu

并建立一条通往我想去的地方的隧道。然后我打开第二个终端并说:

ssh -p 2020 foo@localhost

将我连接到该隧道,我可以看到我想要的文件。因此,我尝试使用WinSCP来执行类似的过程,这样我就可以看到该文件,然后制作我自己的副本,但是我不知所措。有人可以帮助我将上述命令插入WinSCP吗?

2 个答案:

答案 0 :(得分:6)

与Andrey的答案相反:如果您需要通过隧道连接SSH终端会话,您需要通过隧道连接WinSCP以进行SFTP会话,因为SFTP使用下面的SSH。没有区别。

在WinSCP中通过隧道建立连接:

  • 首先设置会话,就像您直接连接一样,即py-01
  • 点击高级按钮打开Advanced Site Settings dialog
  • 转到Connection > Tunnel page
  • 检查通过SSH隧道连接
  • 主机名中的
  • 指定要通过的主机,即university.edu
  • 用户名中的
  • 指定隧道主机的帐户

请注意,隧道端口是自动选择的,因此您不必在任何地方指定它(2200)。

对于被拘留者,请参阅:
https://winscp.net/eng/docs/ui_login_tunnel


如果您已经设置了SSH隧道(使用问题中的第一个命令,如果它使用Cygwin在Windows上运行),您可以使用WinSCP连接到现有的外部隧道:

  • 主机名 localhost
  • 端口号 2200

您也可以采用相反的方式:在WinSCP中明确指定本地隧道端口号,并为SSH终端客户端重用WinSCP隧道。

答案 1 :(得分:-2)

通常,WinSCP不需要隧道。您可以通过标准的ssh端口22连接到远程Linux机器。

但是,如果您仍然需要隧道,则需要指南:http://winscp.net/eng/docs/ui_login_tunnel