Hyper-v 2016 Linux安全启动
Windows Server 2016中的安全启动是一个很好的系统设计,用以确保操作系统的加载工具没有被篡改。对于防止计算机启动进入操作系统之前被恶意代码被注入,安全启动可以是一个很好的防御措施。
安全的引导结合UEFI的加密功能增强引导和处理能力。加密密钥存储在固件。当UEFI要求启动一个操作系统加载程序时,它可以检查操作系统加载程序的加密签名,如果有的话, 针对它知道签名密钥。如果镜像已与可验证密钥签名,UEFI将允许它启动。否则,停止整个启动过程。在hyper-v中,如果在启动的过程中检查操作系统加载程序为没有签名或无效的签名,系统会给我们如下提示:
若要在Hyper-v上启用linux安全启动,需满足如下条件:
1、Hyper-v Server 2016、在Windows Server 2016中启用Hyper-v角色、客户端Windows 10中启用Hyper-v角色
2、需要使用受支持的Linux操作系统版本,具体可参考:https://technet.microsoft.com/en-us/windows-server-docs/compute/hyper-v/supported-linux-and-freebsd-virtual-machines-for-hyper-v-on-windows
3、必须使用二代虚拟机
4、必须在虚拟机设置中启用安全引导
5、所选择的安全启动模板必须是“微软UEFI证书颁发机构”
说了这么多,下面我们就来看一下如何对受支持的Linux操作系统开启安全启动:
打开Hyper-v管理器,找到操作系统为Linux 的虚拟机在此我使用“ubuntu-14.04.4-server-amd64”。注意:需要确保虚拟机已关闭
选中虚拟机,点击设置:
点击“安全”—勾选“启用安全启动”—模板选择“Microsoft UEFI证书颁发机构”:
设置完成以后启动虚拟机,可以看到虚拟机已经正常引导:
除了上述方法我们还可以使用如下PS命令设置Linux安全启动:
Set-VMFirmware -VMName dtlinux -EnableSecureBoot On -SecureBootTemplate 'MicrosoftUEFICertificateAuthority'