一、实验环境说明:
1. 域环境:pubtest.com
2. 服务器Nanjing:域控制器、CA服务器、DNS服务器、Exchange 2003服务器
3. 服务器shenyang:ISA2006服务器,双网卡
4. 客户机Firenze:安装有office outlook客户端,并且信任pubtest域内的企业根
5. 服务器操作系统统一为:Windows server 2003 SP1。CA服务器为企业根,Exchange服务器安装Service Pack2补丁

二、发布思路:
1.在可以正常使用RPC访问的Exchange上的IIS中申请web服务器证书,然后连同私钥一起导出给ISA服务器,使ISA服务器具有解密客户端发过来的HTTPS数据包的能力,在通过防火墙策略审核后,再次加密送给内网的Exchange服务器。
2.在原有策略的基础上(允许内部和×××客户端访问外部),添加俩条发布规则,(因为默认情况下,内部网络与外部网络之间是正向NAT关系,而客户端对内部网络是做入站访问,所以需要做发布规则,允许符合防火墙策略的数据包进入内部网络。)一条规则发布内部Exchange的RPC服务,让外部客户端通过ISA可以找到内部的Exchange服务器。另一条规则让服务符合策略的HTTPS数据包通过防火墙。
3.设置IIS下默认网站中的RPC虚拟目录的安全性,要求必须使用SSL进行连接,并要求基本身份验证,因为外部客户机可能不是域内的邮箱用户,无法进行集成身份验证。
4.外部客户机的outlook客户端需要更改邮件帐户设置,让其通过HTTTPS连接内部Exchange服务器,并且也使用基本身份验证。

三、实验拓扑如下:
利用ISA2006发布Exchange的RPC over HTTPS _prc

四、发布步骤
1.为IIS申请WEB服务器证书,并导出给ISA服务器
打开nanjing的【internet信息服务管理器】,在【默认网站】上右击【属性】 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_02
在【目录安全性】中,点击【服务器证书】
利用ISA2006发布Exchange的RPC over HTTPS _休闲_03
弹出【web服务器证书向导】,选择【新建证书】,下一步 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_04
选择【立即讲证书发送到联机证书颁发机构】 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_05
证书名称和加密位长默认即可 
 利用ISA2006发布Exchange的RPC over HTTPS _休闲_06
单位和部门信息随意 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_07
公用名称很重要,因为客户端需要使用这个名称来连接Exchange服务器。这里我的名称为:nanjing.pubtest.com 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_08
地理信息适当填写 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_09
SSL端口默认为443即可,证书颁发机构选择itetCA(之前我已刷新过组策略,使其自动信任了) 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_10
证书申请完,依次点击【查看证书】,【详细信息】,【复制文件到】把证书连同私钥一同导出。 
 利用ISA2006发布Exchange的RPC over HTTPS _prc_11
在证书导出向导中选择【是,导出私钥】 
 利用ISA2006发布Exchange的RPC over HTTPS _isa 2006 _12
输入一个保护私钥的安全密码 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_13
指定一个导出路径,证书格式为:*.pfx 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_14
导出后,把该证书放到ISA服务器上,并且导入到计算机证书中。打开ISA服务器上的证书,选择【本地计算机】,在【个人证书】任务中选择【导入】 
 利用ISA2006发布Exchange的RPC over HTTPS _prc_15
导入刚才的【nanjing.pfx】证书 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_16
输入安全密码后,保存在个人存储中,就完成了导入 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_17
2.发布两条访问规则
首先发布基于RPC服务的访问规则,用来让outlook客户端可以找到内部的Exchange服务器,并修改邮件帐户设置。然后再发布基于WEB客户端的Exchange服务器访问规则,让邮件通过HTTPS进行加密传输。
先创建一条访问规则,允许【内部、本地主机和×××防火墙】可以访问任何地点。 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_18
再创建一条【邮件服务器发布规则】 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_19
规则名称【发布内部Exchange服务器】 
 利用ISA2006发布Exchange的RPC over HTTPS _prc_20
访问类型为【客户端访问】 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_21
服务选择【Outlook RPC】 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_22
服务器IP为Exchange的IP 
 利用ISA2006发布Exchange的RPC over HTTPS _isa 2006 _23
侦听IP选择【外部】 
 利用ISA2006发布Exchange的RPC over HTTPS _prc_24
发布规则发布完成后,要应用防火墙配置,然后再Firenze上使用测试用户:user1尝试登录内部的Exchange服务器
添加一个【新电子邮件帐户】 
 利用ISA2006发布Exchange的RPC over HTTPS _休闲_25
选择连接到【Microsoft Exchange Server】上 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_26
输入Exchange服务器域名,及测试邮箱帐户,然后【检测姓名】,如果效果如下图,则证明ISA发布规则没有问题。建议不要【使用缓存Exchange 模式】,这样Exchange服务器会保存邮件,并把副本发送到本地,降低性能。 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_27
设置完毕,登录一下user1,也没有问题 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_28
邮箱可以正常访问了,下面再建一条允许HTTPS数据包通过的发布规则。新建【Exchange Web客户端访问发布规则】 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_29
服务选择【outlook RPC/HTTP(s)】 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_30
类型为【单个网站】 
 利用ISA2006发布Exchange的RPC over HTTPS _休闲_31
连接安全使用SSL连接,保证ISA与内部服务器是加密连接 
 利用ISA2006发布Exchange的RPC over HTTPS _休闲_32
内部站点名称:nanjing.pubtest.com 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_33
因为证书上网站的名称为FQDN,所以这里也只能使用FQDN,不能使用IP地址 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_34
新建一个WEB侦听器,用来监听443端口 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_35
ISA与客户端之间也要使用SSL加密 
 利用ISA2006发布Exchange的RPC over HTTPS _isa 2006 _36
监听外部IP地址 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_37
证书选择刚才导入的exchange的证书:nanjing.pubtest.com 
 利用ISA2006发布Exchange的RPC over HTTPS _prc_38
身份验证选择【基本身份验证】,完成即可 
 利用ISA2006发布Exchange的RPC over HTTPS _prc_39
ISA服务器委派身份验证也选择【基本身份验证】 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange2003_40
所有通过验证的用户才适用于此规则 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_41
设置完发布规则,要应用设置才能生效。
3.设置RPC虚拟目录的安全性
只设置了防火墙发布规则是不行的,因为RPC目录默认是允许匿名访问的,不符合安全性要求,所以要改为基本验证,符合防火墙策略要求。
打开RPC虚拟目录属性,在【目录安全性】中,点击【身份验证】框旁边的【编辑】,取消【启用匿名访问】,勾选【集成Windows身份验证】 
 利用ISA2006发布Exchange的RPC over HTTPS _prc_42
并且启用SSL安全通道,要求必须使用安全连接 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_43
4.编辑外部outlook客户端邮件帐户设置
内部和防火墙都已经设置了要求基本身份验证,这时outlook已经不能登陆了,所以在客户端上也要设置通过HTTPS来连接Exchange服务器,并要求基本身份验证。
编辑电子邮件帐户 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_44
选择【其他设置】 
 利用ISA2006发布Exchange的RPC over HTTPS _休闲_45
在【连接】中启用【通过HTTP连接到我的exchange邮箱】,并点击【Exchange代理服务器设置】,设置代理服务器为:nanjing.pubtest.com,【验证设置】为【基本身份验证】 
 利用ISA2006发布Exchange的RPC over HTTPS _prc_46
设置完,保存后,开启outlook客户端,已经提示要求输入用户名和密码了 
 利用ISA2006发布Exchange的RPC over HTTPS _exchange_47
登入邮箱后,查看连接为HTTPS,发布成功。
利用ISA2006发布Exchange的RPC over HTTPS _prc_48

五、总结
其实发布还是比较简单的,重点主要是让ISA服务器拥有Exchange服务器的证书及私钥,其次是IIS和outlook客户端的基本身份验证设置。
另外,如果不发布RPC的Exchange服务器,outlook客户端会找不到内部的Exchange服务器,不过在outlook客户端正确配置完后,可以删除RPC发布策略,客户端还是可以和内部Exchange服务器进行邮件收发的。
本文出自 “激情因梦想而存在” 博客,转载请与作者联系!
本文出自 51CTO.COM技术博客