实时迁移是Hyper-V管理中的日常操作之一。作为Hyper-V管理员,对Hyper-V部署进行恰当地配置以确保为虚拟机实施迁移提供一个安全环境是十分重要的。
你需要做出的最重要的一个决定就是选择认证协议,以确保虚拟机实时迁移的安全性。微软提供了Kerberos和凭据安全支持提供程序(CredSSP)两种选择。微软推荐在所有可能的情况下尽量使用Kerberos(使用限制性的授权)。Kerberos比CredSSP更加安全,并且不受CredSSP认证的单跳限制。
因为CredSSP协议没有Kerberos安全性高,并且单跳限制会带来很多逻辑上的挑战。你可能会想知道为什么微软仍然将其作为一个选项。
只有当Hyper-V服务器被加入到域中之后才能进行实施迁移。在大多数情况下,需要支持实时迁移的Hyper-V服务器都是通用活动目录(AD)森林的成员。在这种情况下,你应该使用基于Kerberos的认证,Kerberos可以很好的用于通用域、甚至通用AD森林中的服务器认证。
如果Hyper-V服务器如果没有位于一个通用AD森林中,那么将毫无意义。微软设计的Windows Server 2012和Windows Server 2012 R2允许按照需求进行实时迁移。比如,你可以将一台虚拟机从一个单独Hyper-V服务器实时迁移到Hyper-V集群上。类似地,你也可以将一台虚拟机从一个主机集群实时迁移到另外一个集群上。
在这些情况中,Hyper-V服务器有可能不属于某个通用森林。比如,你可能需要将一台虚拟机从开发环境森林迁移到生产环境森林。这种情况下,需要尽可能的使用Kerberos认证。但是,只有在森林间存在信任关系时Kerberos才能发挥作用(外部信任不行)。如果不存在森林间的信任关系,则只能使用CredSSP。
在任何可能的情况下都需要避免使用CredSSP。CredSSP会将凭证传送到远程电脑上以完成认证过程。问题是如果这些远程电脑被挟持,那么这些凭证也会被挟持。根据微软的定义,这些凭证可以用来获取远程会话的控制权。
隔离和加强虚拟机实施迁移流量安全
另外一种可以提升实施迁移安全的方式是为实时迁移使用专用网络。这样做可以提供一系列好处。首先,使用专用网络可以改善实时迁移的性能 表现,因为实时迁移流量不会和其他类型的网络流量形成竞争。其次,实施迁移过程会更加安全,因为实施迁移不会暴露到非专用网段当中。
当你在运行Windows Server 2012或者2012 R2 Hyper-V的服务器上配置实施迁移时,你可以使用任何的可用网络或者任何IP地址进行实施迁移。
如果你选择使用专用网络进行实施迁移,那么网络应该拥有专用IP地址段。比如,以192.168.1.0/16格式输入的网络。
你能做的另外一件是输入特定Hyper-V主机的IP地址。当你输入一个地址后(不论是网络地址还是主机地址),都会赋予Hyper-V权限从某个特定源地址接受进入的实时迁移流量。显而易见的是,你不想有人将恶意虚拟机实时迁移到Hyper-V主机上。所以, 你应该划分出信任的Hyper-V服务器IP地址,来接受它们的实时迁移流量。
如你所见,当为Hyper-V部署虚拟机安全实时迁移时,有许多安全方面的***实践需要考虑。作为***实践,你需要尽可能的使用Kerberos认证,但是为了防止Kerberos认证被滥用,还需要使用受限制的授权。我还推荐为虚拟机实时迁移使用专用网络和指明被允许加入实时迁移流程的单独主机。