远程桌面
Web
访问
我们在之前的文章中实现了RemoteApp服务器的部署,配置及测试。RemoteApp服务器使用的协议是大家非常熟悉的RDP协议,RDP协议使用的是3389端口。一般情况下在内网使用3389端口是没问题的,但有些企业的防火墙对3389端口会限制使用,甚至有些电信部门也会限制3389端口的连接。如果遇到限制3389端口的环境,我们可以考虑把RDP协议封装在HTTPS协议中。这样我们在互联网上使用RemoteApp会更加方便,不用担心遭到封杀;而且我们可以使用浏览器作为客户端工具,这样对特定环境的要求就降低了很多,毕竟在当前的互联网环境下浏览器是一个非常容易获取的通用工具。
想让客户机通过浏览器访问RemoteApp服务器,我们可以通过远程桌面Web访问组件来实现。远程桌面Web访问组件其实是IIS7中的一个虚拟目录,用户通过访问这个虚拟目录就可以重定向到RemoteApp服务器。实验拓扑如下图所示,我们准备在TSERVER上部署远程桌面Web访问组件,实验步骤如下。
一 部署远程桌面Web访问组件
我们首先在TSERVER上部署远程桌面Web访问组件。在TSERVER上打开服务器管理器,如图1所示,点击左侧的“角色”,在右侧操作栏中可以看到远程桌面的角色服务。从图中可以看到,远程桌面Web访问尚未安装,点击“添加角色服务”,准备添加远程桌面Web服务。
图1
如图2所示,在角色服务中勾选“远程桌面Web访问”,角色向导提示我们这个角色服务需要IIS组件的支持,点击“添加所需的角色服务”,这样在安装远程桌面Web访问时就可以自动安装所需的IIS组件。
图2
如图3所示,向导列出了所需的IIS组件,这些组件不需要调整,直接点击“下一步”继续。
图3
如图4所示,确认要进行的组件安装正确无误,点击“安装”开始正式的组件安装。
图4
远程桌面Web访问安装的过程非常简单,如图5所示,点击“关闭”按钮就可以结束组件安装了。
图5
二 部署CA
客户机通过HTTPS协议访问RemoteApp服务器时,需要RemoteApp服务器上有证书支持。证书可以从商业CA申请,也可以在企业内部创建自己的CA。一般考虑到经济因素及使用便利,我们最好选择在企业内部创建自己的CA服务器。由于我们的实验环境中有Active Directory,我们决定在域控制器上部署一个企业根CA。
在DCSERVER的控制面板中打开添加或删除组件,如图6所示,在添加/删除Windows组件中勾选“证书服务”。
图6
如图7所示,在企业类型中选择“企业根CA”,企业根CA可以很好地和Active Directory结合,使用起来比独立根CA更方便。
图7
如图8所示,我们输入CA的公用名称,其他参数选择默认值即可。
图8
如图9所示,接下来需要设置证书数据库及数据库日志的存储路径,测试环境下使用默认值即可。
图9
企业根CA部署完成后,会自动通过组策略告知域内的计算机,以便让域内的计算机把企业根CA加入到受信任的证书颁发机构中。如果希望组策略尽快生效,可以在域内的计算机上运行 gpupdate/force。组策略生效后,我们可以用MMC控制台打开证书管理单元,看看企业根CA是否被信任。如图10所示,我们可以看到在XP客户机上,新创建的ContosoCA已经被加入到受信任的根证书颁发机构中了。
图10
如果CA服务器使用的是Windows Server 2003操作系统,那么CA服务器需要安装一个如图11所示的补丁。如果不安装这个补丁,Vista,Win7等客户机操作系统通过浏览器申请证书时会失败,屏幕上会提示正在下载Active X控件,但永远都无法完成。补丁的下载地址是http://support.microsoft.com/kb/922706/zh-cn。
图11
三 申请证书
创建完企业根CA后,我们就可以在RemoteApp服务器上申请一个Web服务器证书了。在TSERVER上打开IIS管理器,如图12所示,在右侧操作栏中选择“创建证书申请”。其实我们现在从图1中可以看到,当前的IIS7中已经有了一个服务器证书tserver.contoso.com,只不过这个证书是TSERVER服务器自己为自己颁发的,并不被域内其他的计算机所信任。
图12
如图13所示,我们需要填写申请证书的各项参数,其中特别要注意的是通用名称,这个名称应该和客户机访问Web服务器时所习惯使用的计算机名相同,这个参数的重要性可以用我们身份证上的姓名来加以比喻。
图13
如图14所示,接下来要选择加密服务提供程序和密码位长,这些参数使用默认值即可。
图14
如图15所示,我们把申请证书的各项参数写入到一个文件certsrv.txt中,这个文件的内容就是用Base64编码保存的证书申请参数,接下来我们还要使用这个文件。
图15
图16
如图17所示,选择“提交一个高级证书申请”。
图17
如图18所示,选择使用Base64编码提交一个证书申请。
图18
如图19所示,打开certsrv.txt文件,把文件内容都复制到证书申请的Base64编码文本框中,证书模板选择“Web服务器”,点击“提交”按钮进行证书申请。
图19
如图20所示,证书申请成功,点击“下载证书”,准备把证书保存为文件。
图20
如图21所示,我们把证书保存为C:\CERTNEW.CER。
图21
再次回到IIS7管理器中,如图22所示,选择右侧操作栏中的“完成证书申请”。
图22
如图23所示,我们提供c:\certnew.cer作为证书颁发机构响应的文件名,证书的好记名称取名为“tserver.contoso.com”,点击“确定”就可以把ContosoCA颁发的证书导入到IIS中。
图23
在IIS7中导入证书后,如图24所示,我们在IIS7管理器中点击左侧的“Default Web Site”,选择右侧操作栏中的“绑定”。
图24
如图25所示,在网站绑定中选择对HTTPS进行编辑,选择让HTTPS协议使用刚刚导入的TSERVER.CONTOSO.COM证书。至此,我们在TSERVER上申请了一个Web服务器证书,并把这个证书用在了网站上。
图25
四 远程桌面Web访问测试
完成了前期的准备工作后,我们在XP客户机上进行最后的测试。在XP客户机的浏览器中输入https://tserver.contoso.com/rdweb,如图26所示,我们在浏览器中看到了远程桌面服务页面。输入域管理员的身份凭证进行登录。
图26
如图27所示,我们看到了RemoteApp服务器上所发布的RemoteApp程序,我们点击Word2007进行测试。
图27
如图28所示,启动Word2007后我们需要选择把本机的哪些资源共享给远程计算机,可供选择的资源有驱动器,剪切板,打印机等。
图28
如图29所示,Word2007在远程服务器上开始运行,这次我们是通过浏览器触发了RemoteApp程序,远程桌面Web访问测试成功!
图29
我们也可以通过浏览器测试一下对远程服务器的桌面访问,如图30所示,在远程桌面服务页面中切换到“远程桌面”标签,填写连接到tserver.contoso.com,远程桌面大小设置为全屏,点击“连接”。
图30
如图31所示,连接到远程服务器时,也要选择是否共享本机的“剪切板”或“打印机”资源。
图31
如图32所示,我们通过浏览器访问到了远程服务器,输入域管理员账号进行测试。
图32
如图33所示,我们在XP上获得了一个远程服务器桌面,我们可以在这个服务器桌面上运行远程服务器上发布出的程序。至此,远程桌面Web访问测试成功,我们在客户机上可以通过浏览器访问到远程服务器上的RemoteApp程序以及服务器桌面!
图33
本文转自yuelei51CTO博客,原文链接:http://blog.51cto.com/yuelei/306291,如需转载请自行联系原作者