开发者社区> 技术小阿哥> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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进行配置”
 
/
Rpcproxy.dll
HTTP
这里我们主要配置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]
NETBIOS,还是用完全合格域名,我们考虑到可能有外网用户访问服务器,所以我们还是改为使用较多的完全合格域名,如下图所示
 
创建CA服务器
/
接下来是选择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邮箱就完成了.
本文出自 “吕达” 博客,请务必保留此出处http://lvdaz.blog.51cto.com/822542/183628

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
真的够可以的,基于Netty实现了RPC框架
RPC全称Remote Procedure Call,即远程过程调用,对于调用者无感知这是一个远程调用功能。目前流行的开源RPC 框架有阿里的Dubbo、Google 的 gRPC、Twitter 的Finagle 等。本次RPC框架的设计主要参考的是阿里的Dubbo,这里Netty 基本上是作为架构的技术底层而存在的,主要完成高性能的网络通信,从而实现高效的远程调用。
0 0
PHP 远程调用以及RPC框架
PHP 远程调用以及RPC框架
0 0
手把手教你写一个RPC框架(三)
手把手教你写一个RPC框架(三)
0 0
手把手教你写一个RPC框架(二)
手把手教你写一个RPC框架(二)
0 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
CDN助力企业网站进入HTTPS时代
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载