连接到 VPN 的虚拟机的 SSH 隧道

连接到 VPN 的虚拟机的 SSH 隧道

我有一台运行 Windows Server 2012 的虚拟机,我们的开发团队用它来测试他们正在开发的应用程序。每个开发人员都有自己的虚拟机,并且该虚拟机必须连接到 VPN 才能访问某些服务(如 TFS)。虚拟机运行着一个 SSH 服务,开发人员用它来控制应用服务器应用程序的状态(启动、重置等)。

问题在于开发人员使用 TFS 进行源代码管理和活动跟踪,他们抱怨由于 VPN,他们必须使用 VM 来访问 TFS 中的任务(注意:由于公司政策,VPN 客户端无法安装在主机上)。

我想创建一个从主机到客户机 (vm) 的隧道,以便访问 TFS 网站(类似于https://TFSServerOverVPN:8080/ProjectX)通过VPN:

主机 --> Putty SSH 隧道 --> VM --> VPN --> TFS 服务器网站

这有可能吗?还有其他方法可以存档吗?

谢谢!

答案1

Plink 可能比 PuTTY 更容易配置。

plink -vCNL 127.0.0.1:8080:addressOfTFSServerOverVPN:8080 -l userNameInVM addressOfVM

您可以使用-pw-i选项跳过输入密码,plink.exe直接在cmd中运行来检查其他选项。

然后将访问https://127.0.0.1:8080/ProjectX转发至https://TFSServerOverVPN:8080/ProjectX

PS:如果TFSServerOverVPN是虚拟主机,则可能需要在主机的hosts文件中将127.0.0.1绑定到TFSServerOverVPN。

答案2

一些想法

  1. 如果您的公司政策不允许您在主机上安装 VPN 软件,您是否希望通过客户机路由来自主机的流量?如果不行,您需要想出其他方法来实现这一点。
  2. 他们抱怨说,由于 VPN,他们必须使用 VM 来访问 TFS 中的任务

在 TFS 中访问他们的任务具体存在什么问题?他们是否需要更多监视器,是否速度太慢,是否因为他们在 VM 中而不喜欢它?

可能的解决方案

  1. 使用安装了 VPN 的第二台 VM 来执行 TFS 任务。他们可以将此 VM 放在不同的显示器上,这样他们就不需要在与他们尝试执行开发项目的 VM 相同的显示器上打开 TFS 任务。
  2. 设置站点到站点的 VPN,并允许开发人员的网络访问 VPN。
  3. 使用 Web VPN,这样开发人员就可以使用 Web 浏览器访问 VPN,而不需要传统的 VPN 客户端。

相关内容