有没有办法通过 SSH 将我的 IP 数据包从网络 B 中的节点“y”发送到网络 A 内的节点“r”?

有没有办法通过 SSH 将我的 IP 数据包从网络 B 中的节点“y”发送到网络 A 内的节点“r”?

我有两个由 Linux 节点组成的网络 A 和 B,我想通过 SSH 在两者之间进行通信:

  • 两个网络被互联网隔开。
  • 网络 A 位于防火墙后面,只允许与其中的节点建立 SSH 连接。
  • 网络B由两个节点组成。
  • 我希望能够向网络 A 中的任何节点发送数据包。
  • 但请注意,由于只允许使用 SSH,因此无法使用特定 IP 通过互联网直接访问网络 A 中的节点。
  • 我无法访问任何用于 NAT 的防火墙。

我怎样才能实现这种沟通?

有没有办法通过 SSH 将我的 IP 数据包从网络 B 中的节点“y”发送到网络 A 内的节点“r”?

答案1

您需要 NAT 来实现这一点。您必须在防火墙中配置 NAT。这可能看起来像这样:

  • 来源:A 的 WAN IP
  • 源端口:任意
  • 目的地:B 的 WAN IP
  • 目的端口:22
  • 重定向至:B 的 LAN IP

你需要在两侧都进行此操作。

我希望这就是你的意思。

答案2

正确的做法是让防火墙执行 NAT(网络地址转换),将其后面的节点映射到不同的 IP 地址。但是,如果您在 Internet 端只有一个 IP 地址,但防火墙后面有多个节点,那么这可能行不通。在这种情况下,防火墙可以提供端口地址转换。这意味着发送到防火墙端口 22 的数据包将转发到节点“r”上的端口 22,发送到端口 23 的数据包将转发到节点“s”上的端口 22,依此类推。

答案3

您可以在两个防火墙上设置 IPSec 或 OpenVPN 隧道。这样,您就可以忽略互联网,将两个网络视为位于同一 LAN 上。关于这两种技术的设置方法,有很多教程。Google 是您的好朋友,或者在此论坛中打开新帖子。

一旦设置了 VPN 隧道,您仍然可以使用防火墙来保护链接。

相关内容