虚拟化 – 是否可以禁用Hyper-V VM的PXE引导?

Hyper-V虚拟机具有PXE引导功能.显然,PXE启动 raises some security concerns.问题是,与典型的物理机固件不同,没有一种明显的方法可以完全禁用PXE启动.

Hyper-V管理器在Settings => Firmware => Boot Order中显示每个VM的网络适配器:

您可以将网络适配器移动到引导顺序的底部,但不能从该屏幕完全删除它.因此,如果出于某种原因,Hyper-V无法从任何其他驱动器启动,则VM仍会尝试PXE启动并显示此屏幕:

我已经搜索了Settings =>网络适配器以获得禁用PXE启动的方法无济于事.

所以我的问题是:

>如何在Hyper-V VM中禁用PXE引导?
>如果无法禁用PXE启动,有充分的理由吗?

我正在使用Windows Server 2012 R2

使用Powershell从引导顺序中删除网络引导设备

您可以使用PowerShell从VM引导顺序中剥离网络引导类型.

提取当前引导顺序

使用Powershell,您可以使用此命令提取当前引导顺序:

$old_boot_order = Get-VMFirmware -VMName testvm -ComputerName MyHyperVHost `
                  | Select-Object -ExpandProperty BootOrder

如果你检查$old_boot_order你应该看到testvm的启动设备列表.像这样的东西:

剥离网络引导设备

您可以使用以下命令使用Network Boottype从引导列表中剥离引导设备:

$new_boot_order = $old_boot_order | Where-Object { $_.Boottype -ne "Network" }

检查$new_boot_order应该看起来像这样,没有更多的网络启动设备:

设置新引导顺序

要为VM设置新的引导顺序,请使用以下命令:

Set-VMFirmware -VMName testvm -ComputerName MyHyperVHost -BootOrder $new_boot_order

确认新引导顺序

要确认您所执行的操作,请再次使用该第一个Get-VMFirmware命令:

Get-VMFirmware -VMName testvm -ComputerName MyHyperVHost `
| Select-Object -ExpandProperty BootOrder

注意:如果同时使用PowerShell和Hyper-V管理器更改引导顺序,PowerShell可能会报告错误的(过时的)引导顺序.另见this technet thread.

相关文章

Hyper-V上运行的Linux虚拟机验证是否安装了集成服务 ps aux|...
目录虚拟化介绍虚拟化厂商介绍微软虚拟化发展历程Hyper-v 3....
最近有win10系统用户在开启Hyper-V功能的时候发现无法启动...
Win10系统中的Hyper-V虚拟机组件可以让用户很方便的创建虚拟...
在Win10中使用Hyper-V来创建虚拟机很方便,下面小编就把Hype...
大家都知道Win10家庭版、中文版、普通版和专业版相比是缺少很...