Jumphost 上没有用户帐户的 SSH Jumphost

Jumphost 上没有用户帐户的 SSH Jumphost

我有提供多个虚拟机的虚拟机托管机。每个虚拟机都有自己的转发端口范围​​,并且每个虚拟机都公开 VNC。问题是主机只有 1 个公共 IP,并且虚拟机是根据端口范围来区分的。 http 和 https 很容易,因为 nginx 可用于执行基于主机名的路由。但其中一位用户位于防火墙网络后面,仅允许端口 22、80 和 443,因此他根本无法连接到虚拟机,因为他的 ssh 端口被阻止。

是否可以设置 SSH 路由器/代理,允许跳转到虚拟机,而无需在虚拟机托管计算机上实际为每个用户创建功能帐户?

答案1

我喜欢使用零层(自动柜员机的免费版本)创建我自己的私人网络。我用它来遍历 NAT,并在 WebUI 上完成配置。它的工作原理就像一个虚拟专用网络(我知道的最接近的工具是hamachi),并且还可以创建虚拟民众网络。

它可以创建几乎无限大小的虚拟以太网。

您将 zt 作为客户端运行,您的系统将有一个虚拟网络“zt”接口。然后,您创建自己的网络环境并在 w​​ebui 中授权“客户端”(针对专用网络)。然后,每个客户端都将获得连接在虚拟“zt”接口上的自己的 IP 地址(或多个,根据您的配置)。

它的工作原理是为每个加入的网络创建一个虚拟zt网络接口(zt0, zt1, etc使用您为其分配的 IP(每个接口可以有多个 IP)。网络可以是私有网络,也可以是公共网络。

编辑:这确实不是对跳转主机问题的直接答案,但它是一种替代解决方案,无需转发端口。使用 zt,您无需将每个 vnc 实例转发到其自己的端口范围,只需为自己的专用网络中的每个虚拟机实例分配一个单独的 IP,并在默认端口上运行。

答案2

如果您想使用跳转主机,请将其 shell 设置为 /bin/false。您可能还需要解决其他安全问题。例如,您应该禁用跳转主机上的 GatewayPorts,并以某种方式阻止隧道而不阻止-W到达目标主机。

相关内容