我目前正在尝试研究如何通过 SSH 连接到拒绝所有传入连接的防火墙后面的服务器。服务器可以 SSH 出去,所以我想知道是否有办法让防火墙后面的服务器创建到我的工作站的 SSH 隧道,然后允许我的工作站通过它将命令发送回服务器?
我研究过隧道/反向隧道,但这些似乎是端口转发解决方案,由于防火墙拒绝所有端口上的所有连接,因此无法正常工作。
理想情况下,我想在 Ruby 中执行此操作(使用 Net::SSH gem),而不是像打开一个新连接:
Net::SSH.start('host', 'user', :password => "password")
我可以以某种方式绑定到现有隧道。
谢谢!