通过防火墙到集群的 SSH 隧道

通过防火墙到集群的 SSH 隧道

我在大学工作,但经常远程工作。大学里有一台集群计算机,我需要能够与之交互,但它位于防火墙后面。我们称防火墙为 F,集群为 C。

过去,在类似的情况下,我只会ssh到 F,然后ssh从 F 到 C。这很好用,而且我可以这样做。问题是,与我过去处理过的其他防火墙不同,F 除了ssh.我需要能够将文件传入和传出 C,如果没有scp.

我的大学针对这种情况提供了sslvpn,但由于我和技术人员无法弄清楚为什么我ssh在sslvpn上无法进入本地计算机。例如,虽然我可以从外部网络ssh进入 F,然后再进入 C,但当连接到 sslvpn 时,我无法通过 ssh 进入 F OR C(或网络上的任何其他计算机)。连接超时。

我认为ssh隧道可能是解决方案 - 将我的流量通过 F 隧道传输到 C(据我所知)。然后我可以scp到 C 或从 C 发送数据包,数据包将通过 F 进行隧道传输。但是,我在设置此选项时遇到了麻烦,并且我在网上找到的指南都没有帮助。我希望能够在 C 上有一个通过 F 建立隧道的交互式 shell。

我试过了:

~  ᐅ ssh -f -R 3000:me@firewall_here:5222 me@cluster_here -N
~  ᐅ ssh -f -L 3000:me@firewall_here:5222 me@cluster_here -N

我也尝试遵循本指南:http://www.revsys.com/writings/quicktips/ssh-tunnel.html 和本指南:

使用这两个命令中的任何一个,当尝试连接到 m3@cluster_here 时,连接都会超时,就像我在 sslvpn 上一样。我不知道如何解决这个问题。任何帮助表示赞赏 - 并且可以运行任何命令以获得更多有用的信息。

答案1

不完全是您要求的答案,但您应该能够通过 SSH 连接传输文件:

发送

ssh user1@firewall "ssh user2@cluster \"cat > remote_file\" "  < local_file

获取

ssh user1@firewall "ssh user2@cluster \"cat remote_file\" "  > local_file

编辑:

还有基于终端的文件传输工具,例如“zmodem”

答案2

了解反向 SSH。也许这会对你有所帮助。我用它连接到 NAT 后面的远程存储。

相关内容