Windows Server 2008 R2允许部署没有域的terminal服务器(远程桌面服务),也没有任何对域的坚持。 这非常有用,特别适用于远程pipe理远程客户端的服务器的独立虚拟或云部署,远程客户端不需要任何ActiveDirectory或域function。
随着微软在每个Windows版本中进一步限制其技术,这个问题变得越来越困难。 在Windows Server 2012中,configuration远程桌面服务的许可证在不在域上时更为困难,但仍有可能。 使用Windows Server 2012 R2(至less在预览中),现在的障碍是严重的:
Windows Server 2012 R2中的“添加/删除angular色和function”向导具有特殊的RDS部署模式,该模式的规则说明您是否不在无法部署的域中。 它告诉你先创build或join一个域。 这当然与Active Directory域控制器不应该与terminal服务器机器是同一台机器的事实有直接冲突。 所以微软的技术并不像一个不需要的节点集群那么多的云操作系统,它需要支持我真正想要部署的一台机器。 这是毛病,所以我试图find一个解决方法。
但是,如果跳过该向导,只需检查主angular色/function向导中的checkbox,则可以部署这些function,但UI不在其中以configuration它们,并且在返回到angular色向导上的RDSconfiguration页,当您以本地计算机pipe理员身份login时,您会收到一条消息,说您无法pipe理远程桌面服务系统,因为尽pipe您拥有所有pipe理员权限(在基于工作组的系统中),但RDSconfigurationUI将不接受这些凭据,让你继续。
我简单的问题是,我还能不知何故,获得以下最终结果:
如果上述所有内容都可以在技术层面上明智地使用PowerShell,那么我准备考虑开发所有需要执行上述操作的PowerShell脚本。 我不是要求别人为我写信 我问的是,有没有人知道是否有一个技术上的障碍,我想上面做什么,而不是刻意削弱2012 R2用户界面的工作组? 如果我从PowerShell脚本操作和控制它们,底层技术是否仍然可以工作?
很显然,1个字是或不是对任何人都有用,所以问题是真的,是或否,为什么? 如果答案是肯定的,那么如何。
我发现自己和你一样。 在独立的Server 2012上部署远程桌面是非常困难的,因为微软的家伙不让你在无域networking上运行,如果你这样做,你不能pipe理所有的设置。
所以,你可以安装一个基于工作组的框,并获得远程桌面angular色的工作。 我们还需要在同一台计算机上安装远程桌面授权function。 但是,一旦此时,即使您已经在服务器上安装了适当的RDS CAL,当用户login时,也会收到试用期开启的消息。
我终于设法使其工作,至less像我们以前知道的老式terminal服务。 这对于需要RDS但是不能在其networking中安装两台服务器的小型客户机的两台生产机器来说是可行的。
开始了:
使用以下步骤安装远程桌面授权和远程桌面会话主机angular色服务:
将许可证服务器添加到terminal服务器许可证服务器组并重新启动远程桌面服务(您可以使用licmgr.exe )
将许可证添加到许可证服务器。
configuration远程桌面会话主机angular色以使用本地远程桌面授权服务器。 按着这些次序:
$obj = gwmi -namespace "Root/CIMV2/TerminalServices" Win32_TerminalServiceSetting
运行以下命令设置授权模式(注意:每个设备的值= 2,每个用户的值为4,我们使用每个用户)
$obj.ChangeMode(4)
运行以下命令以使用许可证服务器( mylicenseserver是您的服务器的名称)replace计算机名称:
$obj.SetSpecifiedLicenseServerList("mylicenseserver")
运行以下命令以validation使用上述步骤configuration的设置:
$obj.GetSpecifiedLicenseServerList()
您应该在输出中看到服务器名称。
完成此操作后,重新引导系统并与任何用户(如果使用工作组,您知道您的用户必须是Remote Desktop Users一部分)login并且试用期消息将消失。
所有这些混乱的来源: http : //support.microsoft.com/kb/2833839
Powershellpipe理 您可以使用Powershellpipe理几件事情。 要查看命令,请尝试:
import-module RemoteDesktop get-command -module RemoteDesktop
您可以通过Powershell执行命令列表来pipe理您的盒子。 不过,我已经尝试了一些,但其中一些需要您安装一些额外的function,不能部署在我们正在讨论的场景中。
如果以上都不适合您,则可以将宽限期重置为最初的120天。 当然,我不build议这样做,因为用户会一直注意到这个信息。 当然,你需要购买适当的许可证。
要重置计数器,只需删除此registry项:
HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\Grace Period
当然,你需要额外的权限才能做到这一点,以pipe理员的身份执行regedit将不起作用。 尝试这个:
psexec -s -i regedit.exe 希望这对你有一些作用。 如果您使用Powershell和RDS进行一些改进,请告诉我们。
当我在实验室里设置一个环境来尝试这个(一个简单的RDS部署没有一个域)时,我find了你的问题的答案,尽pipe这不是你想要听到的。
[Server 2012 and 2012 R2]中的RDS要求将其所有服务器添加到域中 。 据微软公司的一位远程桌面虚拟化团队的程序经理,他写了链接的MSDN博客文章“使用Windows PowerShell设置新的远程桌面服务部署”。
所以,对不起,这不是你想要的答案,但它看起来是相当权威的。 你不能做你想做的事情,因为微软已经决定把域成员资格作为Server 2012和2012 R2中RDS服务器的技术要求。
在testing过程中,我发现至less有一个configuration了IPv6的NIC是很重要的。 这是RDS许可证服务器与自己对话的环回所要求的,它试图通过IPv6来解决这个问题(见Pings)。 我在两个网卡上都禁用了IPv6,导致服务器无法正常回退。