Outlook通过RPC/RPC Over HTTPS访问Exchange邮箱

上一篇博文介绍了一些邮箱的简单配置,这篇我们介绍OutlookRPC/RPC Over HTTPS访问Exchange邮箱
 
我们先看一下有哪些方式可以访问Exchange
①Outlook作为客户端软件,通过RPC/RPC Over HTTPS访问
②IE浏览器作为客户端软件,通过HTTP/HTTPS
Outlook Express作客户端软件  通过SMTP/POP3访问
Outlook Express作客户端软件  通过IMAP访问
⑤通过EXIFS访问
 
Outlook是访问Exchange邮箱的最佳客户端软件,在性能和安全方面Outlook明显占有优势(都是微软自家人嘛)

 

我们要先了解一下RPC协议,RPC是远端过程调用的缩写,普通的网络服务大多有自己的固定端口,比如http在80端口,ftp在21端口,RPC实现的服务却是随机端口。RPC工作方式首先,每个基于RPC的服务都有一个UUIDUUID是一组128位长的数字,被用来区分RPC服务。Exchange服务的UUIDA4F1DB00-CA47-B31F-00DD010662DAEPM(终点映射器End Point Mapper 简称EPM是专门为RPC设计的一个服务,端口是135。客户机首先要连接服务器的135端口,向EPM发起一个查询请求,查询请求中描述了自己所请求服务的UUID然后请EPM告知这个服务对应的端口是多少。EPM查询后告诉客户机,你所请求的这个服务在哪个端口监听。客户机接到这个答案后,接下来就会去连接这个端口,和服务器连接了!
 
因为RPC服务的端口是随机的,存在危险性,所以我们在内网使用RPC访问Exchang服务很正常一旦放到公网,RPC访问就会出现问题,这是因为网络运营商一旦遇到访问135端口的数据包就会马上丢弃。为了应付运营商的封锁,超强的工程师就想到了,把RPC封装成HTTP包,所以这就是我们要用RPC/RPC Over HTTPS来访问邮箱的原因。
 
实验环境如下图所示,China是DNS,Beijing是域控制器和CA服务器,HK是Exchange服务器,London和NewYork都安装了Outlook 2003作为访问邮箱的客户机
一  Outlook通过RPC访问Exchange邮箱
用Administrator登录到London,打开Outlook,因为Administrator已经创建了配置文件,所以我们直接进入Outlook。我们要查看Outlook和Exchange服务器是靠RPC连接还是通过RPC Over HTTPS连接的,按住Ctrl键,右键单击屏幕右下角的Outlook图标,如下图所示,选择“连接状态”(只有按住Crtl键才能看到连接状态)
如下图所示,Outlook和Exchange服务器是通过RPC连接的。
 
二  Outlook通过RPC Over HTTPS访问邮箱
 
通过RPC Over HTTP访问邮箱,就要把RPC封装成HTTP格式,然后再用SSL进行加密,Exchange服务器收到数据后,先对数据进行解密,然多把HTTP数据包解封装成RPC格式。首相我们要完成以下步骤才能实现访问。
 ①在Exchange服务器上安装“HTTP上的代理RPC”并且 对“HTTP代理上的RPC”进行配置
 ②创建CA服务器
 ③Exchange服务器申请证书
 ④配置IIS的身份验证方式
 ⑤配置客户机上的Outlook
 

 ①在Exchange服务器上安装“HTTP上的代理RPC”并且 对“HTTP代理上的RPC进行配置”
 
登录到Exchange服务器上,打开控制面板-添加或删除程序-添加/删除Windows组件,打开网络服务组件,安装里面的“HTTP上的代理RPC”如下图所示
安装完成后打开Internet信息服务器(IIS)管理器,在“网站”中就会多一个RPC目录。打开RPC目录,里面有一个Rpcproxy.dll的动态链接库,客户机送来的HTTP数据包就是靠他来解封装的。
接下来我们对“HTTP代理上的RPC”进行配置
这里我们主要配置RPC的端口号,因为他对HTTP包里的RPC数据包有端口限制。默认情况下,RPC数据包的端口在100-5000之间,然而不巧的是Exchange服务器使用RPC服务端口是,6001,6002....等,不在100-5000这个范围内。我们通过修改注册表把端口范围调到100-7000这个范围,这样就OK了。
在Exchange服务器上运行Regedit,打开注册表编辑器,找到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\RpcProxy\ValidPorts]
把原来的键值HK:100-5000改为HK.ITET.COM:100-7000,向大家解释一下为什么把HK改成了完全合格域名,因为修改这个参数取决于客户机使用什么方式访问服务器,用NETBIOS,还是用完全合格域名,我们考虑到可能有外网用户访问服务器,所以我们还是改为使用较多的完全合格域名,如下图所示
 
创建CA服务器
RPC包被封装成HTTP格式后,要通过SSL进行加密处理,这样我们选用web服务器提供证书,所以我们要在itet.com域内创建一个CA服务器。我们在Beijing上安装CA服务器,一定要确认安装了“Internet信息服务器(IIS)管理器”这个组件,然后打开控制面板-添加或删除程序-添加/删除Windows组件里添加“证书服务”安装时会有一个提示框,单击是继续就可以了,提示内容大概就是不能修改计算机名什么的。如下图所示
接下来是选择CA的类型,我们选择“企业根”这是因为我们部署的是第一台CA服务器,如下图所示
下面要填写CA信息,按照默认设置完成CA安装
特别提示,在HK,London,NewYork,刷新一下组策略,让他们信任Beijing的CA的颁发机构
 
③Exchange服务器申请证书
 
itet.com域内有了CA服务器,Exchange就可以申请证书了,打开“Internet信息服务(IIS)管理器”右击默认网站,选择属性-目录安全性-服务器证书,如下图所示
进入申请向导
新建证书
选择“立即将证书请求发送到联机证书颁发机构”
输入证书名称
填写单位的相关信息
填写站点公用名称是其完全合格域名
这一部很重要,要和刚才修改注册表是填的计算机名保持一致,客户机访问Exchange服务器时也要用这个计算机名
下面的参数按照默认就可以了(端口好:443不要改),完成向导,EXchange服务器证书申请成功。查看证书如下图所示
 
配置IIS的身份验证方式
 
接下来配置IIS的身份验证方式。Outlook把RPC封装成HTTP格式,再进行SSL加密传送到RPC虚拟目录,由于RPC虚拟目录采用的是匿名验证方式,所以我们把它改成基本验证方式,不用担心他的安全性,因为我们还要进行SSL加密!!
打开“Internet信息服务(IIS)管理器”默认网站-RPC-属性-目录安全性,点击编辑,如下图所示
关闭“匿名访问”和“Windows集成验证”打开“基本验证”如下图所示
 
配置客户机上的Outlook
 
我们要让Outlook把RPC封装成HTTP格式,在London上打开控制面板-邮件-电子邮件账号
选择“查看或更改现有电子邮件账户”所下图所示
在Outlook中创建好的账号点击“更改”
原参数不做修改,点击“其他设置”在弹出的选项卡里选择连接,点击“使用HTTP连接到我的Exchange邮箱”如下图所示
在链接到Exchange代理服务器里填写完全合格域名,要与在我们申请的证书的公用名和更改Exchange服务器注册表填写的RPC服务器名完全相同。无论是快速或低速网络,Outlook都优先使用HTTP格式传输数据。将身份验证改为基本身份验证和RPC虚拟目录验证方式一致,如下图所示
 
完成Outlook的配置,我们以Administrator的身份登录Outlook,这时候出现身份验证,提示输入用户名和密码(基本身份验证)
进入邮箱后查看Outlook“连接状态”(按住Ctrl点击图标)连接使用的是HTTPS,实验成果!!!如下图所示
 
这样以来OutlookRPC/RPC Over HTTPS访问Exchange邮箱就完成了,爽死我了,都几点了2:45,欢迎大家参开,谢谢啦!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章