ISA2006发布Exchange服务器之RPC Over HTTPS
试验目的:外网用户通过ISA2006连接到内网的Exchange服务器通过RPC协议,但是考虑到电信部门可能会在公网上封锁RPC协议,为了躲过电信的封杀把RPC协议封装成HTTPS协议在互联网上传输就畅通无阻了。
拓扑图:
介绍下环境
Denver是域内DC,DNS服务器,CA证书颁发机构(企业根),Exchange服务器(域是contoso.com)
Beijing是安装ISA2006标准版,2块网卡(已加入域contoso.com)
Istanbul是外网用户 ,由于是试验没有DNS解析 我是拿的机器上的hosts文件解析的 (Denver.contoso.com 192.168.1.254)
在我试验的环境中,我已经具备了下列条件:
1 Denver上安装了企业根CA服务器。(必须是企业根)
2 所有的实验计算机都信任Denver上的CA服务器。
3 试验所使用的系统是windows 2003 SP1
4 Beijng计算机是已加入域。(如果Beijing不加入域的话,Beijing可以用Denver上装个Radius服务器对域用户进行身份验证。)
大概流程:首先需要让Exchange服务器在收到封装成HTTP格式的RPC数据包后,具有解封装能力,这个功能可以通过安装一个组件“HTTP代理上的RPC”来完成。配置下“HTTP代理上的RPC”,因为在默认情况下“HTTP代理RPC”代理的RPC协议端口范围在100-5000,但Exchange使用的RPC服务端口范围超过了6000。在给IIS申请个服务器证书,然后配置RPC虚拟目录的身份验证这样Exchange就可以支持客户端用RPC封装HTTP后再用SSL进行加密了。 在ISA上创建发布规则了,目的通过发布规则把Exchange的RPC虚拟目录发布到ISA服务器外网网卡上。配置外网客户机的Outlook,让Outlook能把RPC数据封装为HTTPS格式。
第一步:让内网Exchange服务器在收到封装成HTTPs格式的RPC数据包后,具有解封装能力。
1.)在Denver上安装“HTTP 代理上的RPC”网络服务。
在“开始”菜单中,单击“控制面板”,然后单击“添加或删除程序”。
在“添加或删除程序”窗口中,单击“添加/删除 Windows 组件”。 在“Windows 组件”页面中,选择“网络服务”组件(不要选中这个复选框),然后单击“详细信息”。 在“网络服务”对话框中,选择“HTTP 代理上的 RPC”复选框,然后单击“确定”。
在“Windows 组件”页面中,单击“下一步”。 在安装程序完成“HTTP 代理上的 RPC”网络服务的安装之前,请稍等片刻。 在“完成 Windows 组件向导”页面中,单击“完成”。 通常应该在 Exchange 前端服务器上安装 HTTP 代理上的 RPC。但在本次实验中,只有一台 Exchange Server计算机 (Denver),因此您将在这台计算机上安装这个网络服务。 关闭“添加或删除程序”窗口。
安装完后打开IIS里找到Web服务扩展 检查下RPC代理服务器扩展 状况是允许 默认是允许的
2.)配置“RPC 代理”网络服务端口与全局目录服务器 (Denver) 在 HTTP 上的RPC 连接中使用端口6004。
在Denver上在开始 运行里输入regedit 这个命令进入到注册表然后修改注册表 HKEY_LOCAL_MACHINESOFTWAREMicrosoftRpcRpcProxy里的
ValidPorts数值改成了Denver.contoso.com:100-7000 如图
另外在注册表里的 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNTDSParameters 项里添加多字符串命名为“NSPI interface protocol sequences” 并在编辑里键入 “ncacn_http:6004” 的值。
3.)在Denver机器上打开IIS管理器控制台里找到Web默认网站,在属性上给默认网站申请Web服务器证书(Denver.contoso.com )
在默认网站属性——在目录安全性里选择 服务器证书
会弹出 证书向导 点击下一步
选择 新建证书 下一步
选择 立即将证书请求发送到联机证书颁发机构 下一步
这一步是 给证书起名称 我按默认下一步
让输入 单位信息 随自己了 下一步
在这输入公司名称 在这里注意这个名称是与刚才在修改端口名称是一样的 (如果这是DENVER 的话那在刚才修改的端口 应该是 denver:100-7000)
随自己填写 下一步
这说的是SSL端口 按默认 下一步
选择 信任的证书颁发机构 下一步
出现 在让确认下 证书请求 确认误区 下一步
证书 申请完成
点击 查看证书 如图 给IIS的默认网站申请证书OK!
4.)配置 IIS 使用denver.contoso.com Web Server证书(配置RPC虚拟目录的身份验证这样Exchange就可以支持客户端用RPC封装HTTP后再用SSL进行加密了)
在IIS里展开默认站点 找到RPC虚拟目录 右击属性 如下图
在身份验证方法里 选择基本身份验证
在安全通信里 选择要求安全通道(SSL) 要求128位加密
第二步:在ISA2006上创建发布规则
1.)利用Web侦听器向导 创建Web侦听器 ,要求与客户端建立SSL保护的连接,监听网络是:“外部”不允许 ISA server对内容进行压缩,选择的证书是在Denver上导出的服务器证书,在身份验证设置里 身份验证方式是HTTP身份验证 启用基本 其他方式禁用。
在任务窗格“工具箱”选项卡的“网络对象”区域中,选择“新建 Web 侦听器定义向导”对话框的“Web 侦听器名称”文本框中,键入“外部 Web 443”,然后单击“下一步”。
在“客户端连接安全”页面中,选择“要求与客户端建立 SSL 保护的连接”,然后单击“下一步”。
在“Web 侦听器 IP 地址”页面中,填入下列信息: 侦听网络:外部 ISA Server 将对内容进行压缩:禁用 然后单击“下一步”。
在“侦听器 SSL 证书”页面中,单击“选择证书”。在默认情况下,“选择“Denver.contoso.com”,然后“选择”。 在“侦听器 SSL 证书”页面中,单击“下一步”。
在“身份验证设置”页面中,填入下列信息:
身份验证方式:HTTP 身份验证(默认值)·
基本:启用·
摘要:禁用(默认值)·
集成:禁用(默认值) 然后单击“下一步”。·
在“单一登录设置”页面中,单击“下一步”。 在“正在完成新建 Web 侦听器向导”页面中,单击“完成”。 这样就创建了一个名称为“外部 Web 443”的新 Web 侦听器(外部网络中适配器 IP 地址的端口 443)。
2.)创建一个新的 HTTP 上的RPC Web 发布规则。
在右侧窗格中,指定新规则在规则列表中的位置。 在任务窗格的“任务”选项卡中,单击“发布 Exchange Web 客户端访问发布规则”。
在“新建 Exchange 发布规则向导”对话框的“Exchange 发布规则名称”文本框中,键入“发布邮件 (HTTPS 上的 RPC)”,然后单击“下一步”。
在“选择服务”页面中,填入下列信息:
Exchange 版本:Exchange Server 2003 (默认值)
Outlook Web Access:禁用
Outlook RPC/HTTP(s):启用
禁用所有其它的复选框(默认值)
然后单击“下一步”。
在“发布类型”页面中,选择“发布一个单一的 Web 站点”,然后单击“下一步”。
在“服务器连接安全”页面中,选择“使用 SSL 连接到发布的 Web Server”,然后单击“下一步”。
在“内部发布细节”页面的“内部站点名称”文本框中,键入“denver.contoso.com”,然后单击“下一步”。 这个内部站点名称必须与 Denver Web Server证书中的名称完全一致。
在“公共名称细节”页面中,填入下列信息:
接受请求:此域名(在以下输入):·
· 公共名称:Denver.contoso.com 然后单击“下一步”。
这个公共名称必须与 Denver 证书中的名称完全一致。v
在“选择 Web 侦听器”页面的“Web 侦听器”下拉列表框中,选择“外部 Web 443”,然后单击“下一步”。
在“身份验证委派”页面中,选择“基本身份验证”,然后单击“下一步”。
在“用户集”页面中,单击“下一步”。
在“正在完成新建 Exchange 发布规则向导”页面中,单击“完成”。
这样就创建了一个新的 Web 发布规则,它将 denver.contoso.com (/rpc)上的 Web 站点作为 Denver.contoso.com (/rpc) 在外部网络中发布。
第三步:配置外网的Outlook,外网让Outlook能把RPC数据封装为HTTPS格式
在“开始”菜单中,单击“控制面板”,然后单击“邮件”。 在“邮件设置 - Outlook”对话框中,单击“电子邮件帐户”。 在“电子邮件帐户”对话框中,选择“查看或更改现有电子邮件帐户”,然后单击“下一步”。
在“电子邮件帐户”页面中,单击“更改”。 “控制面板”程序将试图(使用 RPC)连接到 Exchange Server。在几秒后,将会显示一个消息框,通知您这个 Exchange Server不可用。 单击“取消”,关闭“连接到 Microsoft Exchange Server”消息框。
在“Exchange Server 设置”页面中,单击“其它设置”
在“Microsoft Exchange Server”对话框的“连接”选项卡中,启用“使用 HTTP 连接到我的 Exchange 邮箱”,然后单击“Exchange 代理设置”。
h. 在“Exchange 代理设置”对话框中,填入下列信息:
使用这个 URL· (https://):Denver.contoso.com
· 仅使用 SSL 连接:启用(默认值)
相互对会话身份验证:启用·
· 代理服务器的主体名称:msstd:Denver.contoso.com
在快速网络中,首先使用 HTTP 连接:启用·
· 在慢速网络中,首先使用 HTTP 连接:启用(默认值)
代理身份验证设置:基本身份验证 然后单击“确定”。·
msstd 是针对 RPC 主体名称的 Microsoft 标准。在连接后,Outlook 通过 msstd 主体名称来验证是否连接到正确的服务器。 快速网络和慢速网络的区别是由网络适配器报告的速度来决定的。如果网络适配器报告的速度低于 128 Kbps,那么将被认为是慢速网络。 如果启用了这个选项,那么 Outlook 将首先尝试使用 HTTP (HTTP 上的 RPC)进行连接,然后使用 TCP/IP (RPC) 进行连接。 使用基本身份验证(而非 NTLM 身份验证)允许实现 Outlook RPC/HTTPS 连接,即使 ISA Server 2006 被配置为使用 HTML 表单身份验证。Outlook 不支持表单身份验证,但是 ISA Server 2006 在非浏览器应用程序连接时将自动地使用基本身份验证。
单击“确定”,关闭“Microsoft Exchange Server”对话框。
在“Exchange Server 设置”页面中,单击“下一步”。
- 最新评论