原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。 http://yuelei.blog.51cto.com/202879/306291
远程桌面
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
在
TSERVER
上打开浏览器,访问
https://dcserver/certsrv,如图16
所示,选择“申请证书”。
图
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