博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Win2008 R2 RemoteApp深度体验之五,远程桌面Web访问
阅读量:6078 次
发布时间:2019-06-20

本文共 3392 字,大约阅读时间需要 11 分钟。

远程桌面
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
控件,但永远都无法完成。补丁的下载地址是
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
上打开浏览器,访问
所示,选择“申请证书”。
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
客户机的浏览器中输入
所示,我们在浏览器中看到了远程桌面服务页面。输入域管理员的身份凭证进行登录。
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,如需转载请自行联系原作者
 
你可能感兴趣的文章
设计模式之桥接模式
查看>>
大学毕业后的几条路
查看>>
oracle 归档空间满的解决办法
查看>>
Daily Scrum 11.3
查看>>
如何使用NET Reactor为您的.Net(C#,VB.Net) 源代码加密!
查看>>
SpringBoot项目实现文件上传和邮件发送
查看>>
jquery源码学习之 设计结构
查看>>
地震后日本多家工厂停工 PSP2或推迟后期研发
查看>>
Java程序员的推荐阅读书籍
查看>>
js 调整排序
查看>>
MVC5-9 今天讲三个Descriptor
查看>>
Asp.Net SignalR GlobalHost外部通知
查看>>
在AspNetMvc中使用日志面板. Logdashboard 1.1beta
查看>>
AccessHelper
查看>>
0709作业
查看>>
sql server 查询出的结果集,拼接某一列赋值给一个变量
查看>>
大脑记忆 过程
查看>>
16进制的简单运算http://acm.nyist.net/JudgeOnline/problem.php?pid=244
查看>>
C# 为什么使用了多线程界面假死?
查看>>
遍历打印目录文件
查看>>