使用ssh隧道与使用远程ip而不是本地ip的客户端连接

使用ssh隧道与使用远程ip而不是本地ip的客户端连接,ssh,ssh-tunnel,Ssh,Ssh Tunnel,我有以下问题 以下ssh连接工作得非常好: hostAWin-->hostBLinux hostBLinux-->hostCLinux 我需要启用位于hostAWin上的客户端,以便使用ssh-to-hostCLinux-ip连接到hostCLinux 但是这种通信被防火墙阻止了 我不能使用ssh隧道,因为这将通过将客户端定向到本地主机来完成,但我需要客户端继续尝试连接到hostC的ip 我怎么做?(如果可能的话…) 澄清: 我无法将主机文件映射到上,因为实际情况是我有多台机器(c、d、e、f

我有以下问题

以下ssh连接工作得非常好:

hostAWin-->hostBLinux

hostBLinux-->hostCLinux

我需要启用位于hostAWin上的客户端,以便使用ssh-to-hostCLinux-ip连接到hostCLinux

但是这种通信被防火墙阻止了

我不能使用ssh隧道,因为这将通过将客户端定向到本地主机来完成,但我需要客户端继续尝试连接到hostC的ip

我怎么做?(如果可能的话…)


澄清:

我无法将主机文件映射到上,因为实际情况是我有多台机器(c、d、e、f…),A无法访问所有这些机器

在A中,我需要打开多个ssh连接(c、d、e、f各一个…)


我想简化这个问题,所以我提出了一个连接问题,实际上是一对多。所有主机都被公司fw从a阻止,并且可以通过b访问。

如果hostA上的客户端通过名称(而不是IP地址)连接到hostC,则可以使用c:\Windows\System32\Drivers\etc\hosts将该主机名指向127.0.0.1,因此它使用ssh隧道而不是直接连接


因此,您可以将hostC的DNS名称指向hostB的IP地址,然后使用从hostB到hostC的一跳隧道

。最后,我通过使用delight industries的ui客户端解决了这个问题,该客户端使我能够将本地IP(127.x.y.z)耦合到同一端口以创建不同的连接

通过这种方式,我可以将一台机器通过另一台机器链接到许多不同的机器 就是这样

127.0.0.1:22->22:mediatorSshAccessible machine->22:machineC

127.0.0.2:22->22:MediaSShaccessible machine->22:machineD

127.0.0.3:22->22:mediatorSshAccessible machine->22:machineE

等等等等等等

现在只剩下一个问题

我如何使用一些更标准的客户端(如putty)重新创建它? putty甚至不允许我映射本地ip。
如何使用常规ssh命令来实现这一点?

我已经考虑并排除了此解决方案。虽然如果客户端只有一个连接就可以了,但在我的例子中,客户端连接到多个服务器,所以我不能对所有服务器使用相同的ip。它必须是每个服务器的唯一ip(实际上不止是c,它是c,d,e…所有都被fw阻止,并且可以从bregarding访问您提出的单跳解决方案,我不确定我是否遵循了您的建议。什么是将hostC的dns名称指向hostB?什么是单跳隧道?我的意思是在hostA的网络设置中将hostC的名称设置为hostB的IP地址。然后hostA尝试连接。)t发送到hostC,但实际上会将流量发送到hostB,在hostB中有一个ssh隧道将连接转发到hostC(但绕过阻止hostA hostC direct的防火墙)。