从Windows Server 2003 SP1开始,客户端便可以通过服务器身份验证安全套接字层(SSL)证书连接到远程桌面服务器。要实现这一功能,只需管理员使用和配置服务器操作系统的“远程桌面会话主机” 配置工具即可。尽管Windows Vista和Windows 7这样的客户端操作系统并无这样的管理工具可用,但服务器仍可以向它们颁发远程桌面连接证书。要通过证书来实现安全的远程桌面连接连接有两种常用配置方法。
第一种方法使用组策略和证书模板来进行配置;第二种方法则是使用WMI脚本来进行配置。 第一种方法:使用组策略和证书模板 此种方式允许管理员为域中的多台计算机安装远程桌面证书,前提是域中必须……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
从Windows Server 2003 SP1开始,客户端便可以通过服务器身份验证安全套接字层(SSL)证书连接到远程桌面服务器。要实现这一功能,只需管理员使用和配置服务器操作系统的“远程桌面会话主机” 配置工具即可。尽管Windows Vista和Windows 7这样的客户端操作系统并无这样的管理工具可用,但服务器仍可以向它们颁发远程桌面连接证书。要通过证书来实现安全的远程桌面连接连接有两种常用配置方法。第一种方法使用组策略和证书模板来进行配置;第二种方法则是使用WMI脚本来进行配置。
第一种方法:使用组策略和证书模板
此种方式允许管理员为域中的多台计算机安装远程桌面证书,前提是域中必须有正常工作的公钥基础结构(PKI)。
首先,管理员需要创建一个远程桌面证书模板。
创建远程桌面证书模板:
- 在企业证书颁发机构中找到“证书模板”。
- 找到并右键单击“计算机”模板,选择“复制模板”。
- 在弹出的对话框中选择“Windows Server 2008 Enterprise”模板类型。
- 此时会弹出一个新模板的“属性”对话框。
- 我们在“常规”选项卡中将“模板显示名称”和“模板名称”改为“RemoteDesktopComputer”以方便今后识别和使用。注意:此处的模板显示名称和模板名称必须相同。
- 再到“扩展”选项卡中选择“应用程序策略”并点击“编辑”按钮。
- 此时会出现一个“编辑应用程序策略扩展”对话框。
- 要创建“远程桌面身份认证”策略必须先删除“客户端身份验证”和“服务器身份验证”策略,然后再点击“添加”。
- 此时会出现一个“添加应用程序策略扩展”对话框。我们在对话框中单击“新建”。
- 此时会出现一个“新建程序策略扩展”对话框。我们在“名称”中输入“Remote Desktop Authentication”,再在“对象标识符”中输入“1.3.6.1.4.1.311.54.1.2”并单击“确定”。
- 在“添加应用程序策略”对话框中选中“Remote Desktop Authentication”点击“确定”。
- 现在“编辑应用程序策略扩展”对话框显示如下:
- 再通过点击2次确定后,就回到新模板的“属性”对话框了。
此时,新模板的准备工作已经完成。
下一步骤就是发布模板。
发布“RemoteDesktopComputer”证书模板:
- 在企业根证书颁发机构中找到“证书模板”。
- 在“证书模板”上右键单击并选择“新建”—“要颁发的证书模板”。
- 此时会弹出一个“启用证书模板”对话框。我们找到并选择“RemoteDesktopComputer”,然后单击确定。
现在“RemoteDesktopComputer”模板已经发布并可以用于证书请求。
最后一步,我们需要使用组策略将“RemoteDesktopComputer”模板配置为远程桌面身份验证的基本证书。
配置组策略
- 在域控制器上打开“组策略管理”工具,右键单击“默认域策略”并点击“编辑”。此时会弹出“组策略管理编辑器”(注意:策略可以应用到域中的所有计算机,管理员也可以根据需要将其应用到所需的OU)
- 导航至“计算机配置—策略—管理模板—Windows 组件—远程桌面服务—远程桌面会话主机—安全。”
- 双击“服务器身份验证证书模板”策略
- 启用策略,并在“证书模板名称”中输入“RemoteDesktopComputer”并点击确定。
- 当此策略应用到域中的所有计算机后,所有启用远程桌面连接的计算机都将到证书颁发机构服务器去请求基于“RemoteDesktopComputer”模板的证书,并用证书对远程桌面客户端进行验证。(管理员可通过gpupdate /force命令在客户端上强制刷新以获取到组策略的更新)
第二种方法:使用WMI脚本
此方法允许管理员直接使用远程桌面连接的服务器证书,但管理员需要提前手动对证书进行安装。这种方法通常用于:使用企业向Internet公共证书颁发机构购买的证书。
首先需要检查我们已有的证书是否符合远程桌面证书的要求。不符合这些要求的证书将不能正常工作,并将被服务器忽略。
远程桌面证书的基本要求:
- 证书必须安装到计算机的“个人”证书存储区域中
- 必须拥有证书的私钥
- 证书的“增强型密钥用法”扩展中应有“服务器身份验证”或“远程桌面身份验证”(1.3.6.1.4.1.311.54.1.2)。
- 为了正常使用,我们首先要获取到远程桌面连接证书的指纹。
获取证书的指纹:
- 双击已有的证书
- 单击“详细信息”标签
- 在列表中选择“指纹”
- 将指纹值复制到记事本当中
- 删除数字之间的所有空格
如上图示例,我们获取到的指纹应该是: 3d710cecbb29d5dfcb61a6157cefd746b7b04b74
注意:当我们获取到证书指纹之后,才能通过脚本将证书应用于远程桌面连接。.
配置远程桌面证书的WMI脚本:
/* ==============================================================
JScript Source File
NAME: ConfigRemoteDesktop.js
AUTHOR: Billy Fu
DATE : 2010/8/2
==================================================================*/
var strComputer = ".";
var strNamespace = "\root\CIMV2\TerminalServices";
var wbemChangeFlagUpdateOnly = 1;
var wbemAuthenticationLevelPktPrivacy = 6;
var Locator = new ActiveXObject("WbemScripting.SWbemLocator");
Locator.Security_.AuthenticationLevel = wbemAuthenticationLevelPktPrivacy;
var Service = Locator.ConnectServer (strComputer, strNamespace);
var TSSettings = Service.Get("Win32_TSGeneralSetting.TerminalName="RDP-Tcp"");
if (WScript.Arguments.length >= 1 )
{
TSSettings.SSLCertificateSHA1Hash = WScript.Arguments(0);
}
else
{
TSSettings.SSLCertificateSHA1Hash = "0000000000000000000000000000000000000000";
}
TSSettings.Put_(wbemChangeFlagUpdateOnly);
将以上脚本内容复制到 “ConfigRemoteDesktop.js”文件当中,并以管理员方式启动命令提示符号(Cmd.exe.),再通过“cscript ConfigRemoteDesktop.js <证书指纹>”命令来将证书应用到远程桌面连接。
(注意:执行此脚本不加任何参数时将自动还原到远程桌面的自签名证书)
关于作者:付林,TechTarget中国特约专家。2006-2010年微软最有价值专家、获得MCSE、MCSA、MCDBA、MCTS认证。在服务器管理、IT咨询与项目服务领域有多年经验。自由撰稿人,著有《Windows 7来了——Windows 7使用指南》等书籍。
作者
相关推荐
-
Hyper-V R2配置要避免的三大错误
几乎在所有控制面板中都能找到Hyper-V R2的配置错误。尽管这些都不会破坏数据中心,但还是会危害客户环境。下面我们就来看看Hyper-V R2配置要避免的三大错误吧。
-
Windows配置管理指南
在Windows服务器系统中,配置与管理是永恒变的课题。新系统新工具的配置在管理员的工作中不会少见,系统和工具的配置变更占的比重也绝不会少,而完成新配置之后的管理更是管理员日常工作中的重头戏。我们整合了Windows专家们的意见与建议,将他们Windows配置管理工作中遇到的问题、用到的工具和实践心得汇集成册分享给你们。
-
SELinux教程:如何配置RHEL5和Web服务器?
RHEL同时提供了图形用户界面(GUI)和命令行两种方式配置SELinux。为了表现SELinux的简单易用,本文使用RHEL的GUI来启用SELinux。
-
配置Linux管理任务:整合及安全(下)
《意外的管理员:按步教你配置Linux服务器》最初并没有作为一本书来编写。作者Don R. Crawley写了一份讲义,作为他任教的Linux研讨会的补充学习材料。