我可以将 Internet 连接传递给虚拟机,但在主机上禁止它吗?

我可以将 Internet 连接传递给虚拟机,但在主机上禁止它吗?

我遇到了以下情况。

我有一台连接到互联网的物理机器。

它运行一个虚拟机,可以利用主机互联网连接。

我希望禁用主机上的 Internet 连接,但只将其转发到虚拟机。

是否有任何技巧或智能配置或注册表项或其他东西可以“打破”主机上所有应用程序、进程和服务的 Internet 访问,而只允许从虚拟机上使用?

基本上,我希望在物理机器上有一个安全的工作环境,并有一个独立的虚拟浏览空间。

虚拟化技术是Hyper-V。

更新:

我的主机实际上有两个物理网络适配器:

  • 英特尔 WLAN 适配器
  • 千兆以太网适配器

我目前正在使用 WLAN 连接到路由器。以太网未使用。

答案1

正确的做法是,在服务器上安装两个网络适配器。Hyper-V 允许客户操作系统独占主机上的网络适配器,因此主机根本无法使用该适配器。

在此处输入图片描述

只需取消选中该复选框即可Allow management operating system to share this network adapter

如果您愿意忍受完全没有网络访问,您可以取消选中系统上唯一适配器的复选框。在您需要时,只需暂时选中该复选框,然后在完成后取消选中即可。

答案2

您使用什么主机操作系统?在这种情况下,这似乎非常重要。我假设 Windows 作为主机。我认为客户操作系统无关紧要。如果可行,那就行。您的问题涉及防火墙,因为它与传出流量有关。

有两种类型的(软件)防火墙。第一种类型按端口号阻止。Http 流量是端口 80,https 是端口 443,尽管有时也会使用 8080 和 8443。Ftp 是端口 21,ssh 是端口 22,等等。这对您没有用。如果您在主机上阻止端口 80,则客户机也会被阻止。

第二种防火墙是按应用程序阻止的。因此,如果您在主机上使用 Firefox 并打开网页,防火墙会注意到此请求,并询问您要做什么。您可以阻止它,并且您可能可以将其设置为阻止所有应用程序,但 VM 应用程序除外。因此,如果您使用 Virtualbox,并在 Virtualbox 中运行的客户机中使用 Firefox 打开网页,我认为(但不能 100% 确定)主机防火墙会将此视为 Virtualbox 的请求,而不是 Firefox 的请求。然后您允许此流量。

像 Comodo 这样的免费防火墙可以做到这一点。OSX 有一个内置防火墙可以做到这一点。Windows 内置防火墙可能也可以做到这一点。我想 Ubuntu 中也会有一个防火墙可以做到这一点。所以我认为这可以在任何主机操作系统中实现。

答案3

最简单的方法是通过 IP 地址过滤或代理访问来实现。

  • 仅允许通过代理访问并在虚拟机内部进行配置,但不在主机上进行配置。
  • 让虚拟机获取其自己的(静态)ip 地址,并在您的网络防火墙上为该 ip 地址打开 Internet 访问,但不在您的物理机器上。

您甚至可以通过在物理机器上配置代理来实现这一点。我有一个基于 Java 的代理,它可以区分路由和本地访问。所以这对您也有帮助。不过我记不起它的名字了。

相关内容