将网络连接隧道连接到没有网络的VMWare来宾

时间:2014-02-10 17:39:36

标签: networking tcp vmware tunnel vmware-tools

我正在尝试在客户端计算机和在ESXi服务器内运行的来宾VM之间建立TCP连接。诀窍是客户虚拟机没有配置(有意)网络。但是ESX服务器在网络上,因此理论上可以弥补与软件的差距。

具体来说,我想最终从客户机上运行的python代码创建一个直接的TCP连接(我想创建一个RPyC连接)。然而,导致类似ssh的端口隧道的任何事情都将是足够的突破。

我认为可以使用VMWare Tools,pysphere和模糊网络适配器的某些组合。但到目前为止,我的搜索没有产生任何结果,我的唯一想法是丑陋(比如隧道文件操作)和/或非常容易出错(基本上,如果我必须构建TCP堆栈,我知道我会写了很多错误。)

用于测试环境设置,而不是生产;但我更喜欢稳定超速。我目前认为不需要高吞吐量。

总结设置:

  • 安装了vmware工具的客户端计算机(Windows / Linux,无论什么工作)
  • ESXi服务器(可从客户端计算机访问的网络)
  • VMWare guest虚拟机,根本没有NIC,但可以使用vmware工具访问(在我的情况下必须是Windows,但为了完整起见,欢迎使用Linux解决方案)

任何想法和进一步的阅读建议都会很棒。 谢谢你上网,你是最好的!

3 个答案:

答案 0 :(得分:2)

目前尚不清楚'客人身上没有NIC'的含义。如果我可以假设,没有为客户分配物理网卡就是这里的意思。解决方案很简单,因为可以为来宾VM配置vmWare软NIC,并将其作为来宾netstack的入口点。

但是如果软NIC也不可用,我真的很想知道如何以及什么可以作为guest虚拟机的入口点,无论是Linux / Windows。据我所知,如果这就是你的意思,那么你可能需要修改客户操作系统以使用不同的门来访问访客网络堆栈并从中发布/排除密码。但同样,当你正确实现这个后门时,它将成为softNIC的另一个实现,默认支持vmware。那么,为什么不使用它?

答案 1 :(得分:1)

如果VM'故意'没有配置网络,则无法通过网络连接到它。

你的问题体现了矛盾。

答案 2 :(得分:1)

有点晚了,但虚拟串口可能是你的朋友。您可以通过网络或本地选择外端的串行端口,具体取决于您的选项。比你可以有一些ppp的东西或两端的自定义脚本进行通信。如果您想避免使用ppp接口但仍需要为某些应用程序隧道连接TCP,那么您还可以运行某些工具从客户端的串行链接创建单个套接字。 这应该在分析恶意代码时保证您的安全,只要它不是天网:-)您仍然应该在系统管理员的许可下执行此操作,因为您可能通过解决某些安全问题违反了公司的规则测量