将来自 SSH 隧道的流量转发到 Linux 设备上的 VPN 隧道

将来自 SSH 隧道的流量转发到 Linux 设备上的 VPN 隧道

我想将来自 ssh 隧道(由 ssh 动态端口转发构建)一端的网络流量路由到 VPN 隧道的一端。

例如,给定四个 Linux 设备 A、B、C 和 D,我想创建一个网络流量路由

A --ssh_tunnel--> B ------> C

A --ssh_tunnel--> B --GRE_tunnel--> D ------> C

这些设备的所有 IP 地址都是静态的除了 C 是动态的。为了形成上述拓扑,我正确配置了设备 D 并确认GRE隧道已成功建立。

但是,我找不到如何配置设备 B,以便将来自 A 通过 ssh 隧道的流量路由到 B 和 D 之间建立的 GRE 隧道。由于 C 的 IP 地址是动态的,route因此无法在 B 上配置基于目标的路由(使用)。实际上,我尝试使用命令ip行配置设备 Biptables以应用基于源的路由,但我无法找到解决方案。

答案1

假设您只想将 SSH 连接一直转发到 C,您可以将 B 上的 SSH 端点设为专用用户帐户,然后使用 iptablesowner模块进行匹配,--uid-owner username以使流量通过接口流出朝向D。

相关内容