·OWASP要素增强Web应用程序安全(2)
·“恶搞”盗用你无线网络的邻居
·如何入侵jsp网站
·黑客知识:如何隐藏 PHP文件后门的技
·jsp+javabean学习(二)
·Java入门视频教程-第61讲
·OWASP 10要素增强Web应用程序安全(1
·什么是asp木马
·如何在Windows Server 2003中安装Java
·Web 2.0网站安全堪忧 JavaScript恐引
本任务的内容
%26#8226; | 简介 |
%26#8226; | 概述 |
%26#8226; | RPC over HTTP 的使用要求 |
%26#8226; | Exchange 配合 RPC over HTTP 使用的建议 |
%26#8226; | 配置 Exchange Server 计算机以使用 RPC over HTTP |
%26#8226; | 在“Internet 信息服务”中配置 RPC 虚拟目录 |
%26#8226; | 配置 RPC 代理服务器以使用特定的端口 |
%26#8226; | 配置 Outlook 2003 计算机以使用 RPC over HTTP |
%26#8226; | 疑难解答 |
%26#8226; | 参考 |
简介
本文分步介绍了如何在 Microsoft Exchange Server 2003 中配置超文本传输协议 (HTTP) 上的远程过程调用 (RPC)。
概述
Exchange Server 2003 和 Microsoft Office Outlook 2003 支持 Microsoft Windows Server 2003 中的 RPC over HTTP。RPC over HTTP 能够提供对 Exchange 邮箱的访问。使用 RPC over HTTP,远程用户无需使用虚拟专用网络 (VPN) 连接到 Exchange 计算机。相反,运行 Outlook 2003 的用户可以通过 Internet 直接连接到 Exchange 计算机。RPC over HTTP 允许 RPC 客户端通过 Internet 建立连接。Outlook 2003 是 RPC 客户端的一个示例。RPC 客户端通过 HTTP 协议创建 RPC 通信隧道建立 Internet 连接。通常的 RPC 通信不适合在 Internet 上使用。RPC 通信不能通过外围网络上的防火墙可靠地运行。RPC over HTTP 使得通过外围网络上的防火墙使用 RPC 客户端成为可能。如果 RPC 客户端可以与运行 Microsoft Internet 信息服务 (IIS) 的远程计算机建立 HTTP 连接,该 RPC 客户端便可以连接到远程网络上的任何服务器。远程网络上的服务器必须被配置为可以使用 RPC over HTTP 通过 Internet 进行访问。此外,RPC 客户端和 RPC 服务器程序可以通过 Internet 进行连接,即使这两个程序位于不同网络上的防火墙之后。
在基于 Exchange 的邮件系统中配置 RPC over HTTP 时,可以采用以下两种配置:
多台服务器
在这种配置中,您的组织中有多台服务器。这些服务器被配置为执行全局编录服务器、Exchange 前端服务器、Exchange 后端服务器和 RPC 代理服务器的功能。有关此配置的其他信息,请访问下面的 Microsoft Web 站点:
http://www.microsoft.com/china/technet/prodtechnol/exchange/2003/library/ex2k3rpc.mspx单台服务器
在这种配置中,您有一台服务器,该服务器被配置为执行全局编录服务器、Exchange 计算机和 RPC 代理服务器的功能。本文详细介绍了单服务器配置。配置 RPC over HTTP 时,必须执行下列所有步骤:
1. | 验证服务器计算机和客户端计算机是否满足 RPC over HTTP 的使用要求。 |
2. | 考虑本文介绍的重要事项和建议。 |
3. | 配置 Exchange 以使用 RPC over HTTP。 |
4. | 在 Internet 信息服务中配置 RPC 虚拟目录。 |
5. | 配置 RPC 代理服务器以使用特定的端口。 |
6. | 配置客户端计算机以使用 RPC over HTTP。 |
RPC over HTTP 的使用要求
要使用 RPC over HTTP,计算机必须满足以下要求。
服务器要求
计算机必须运行 Microsoft Windows Server 2003。必须在运行 Exchange Server 2003 的计算机上安装 Windows Server 2003。RPC over HTTP 需要 Windows Server 2003 和 Exchange Server 2003。RPC over HTTP 同时还需要全局编录角色的 Windows Server 2003。
客户端要求
%26#8226; | 客户端计算机必须运行 Microsoft Windows XP Professional Service Pack 1 (SP1),并且必须安装以下 Microsoft 知识库文章中介绍的更新程序包: 331320 通过 HTTP 连接到 Exchange Server 2003 时 Outlook 2003 性能变慢或停止响应 注意:您也可以将 Windows Server 2003 作为客户端操作系统运行。 |
%26#8226; | 客户端计算机必须运行 Microsoft Office Outlook 2003。 |
Exchange 配合 RPC over HTTP 使用时的建议
Microsoft 建议在您配合 RPC over HTTP 使用 Exchange 时遵循以下所有要求:
%26#8226; | 使用安全套接字层 (SSL) 上的基本身份验证。
Microsoft 建议您为所有客户端与服务器之间的通信启用并要求在 RPC 代理服务器上使用安全套接字层。 |
%26#8226; | 在外围网络上使用高级防火墙服务器。
Microsoft 建议您使用专用防火墙服务器以提高 Exchange 计算机的安全性。例如,Microsoft Internet Security 和 Acceleration (ISA) Server 2000 是专用的防火墙服务器产品。有关其他信息,请访问下面的 Microsoft Web 站点: http://www.microsoft.com/china/technet/prodtechnol/exchange/2003/library/ex2k3rpc.mspx. |
%26#8226; | 从第三方证书颁发机构 (CA) 获取证书。
要启用 SSL 并对 RPC 代理服务器与 Outlook 客户端之间的所有通信使用 SSL,必须获取证书并在默认 Web 站点级别发布证书。Microsoft 建议您从多种 Web 浏览器都信任其证书的第三方证书颁发机构购买证书。
重要说明:您也可以使用 Windows 中的证书颁发机构工具安装自己的证书颁发机构。默认情况下,Web 浏览器不信任此方案中的根证书颁发机构。当用户尝试在 Outlook 2003 中使用 RPC over HTTP 进行连接时,该用户将无法连接到 Exchange。系统将不通知该用户。当满足以下任一条件时,用户的连接将断开: %26#8226; | 客户端不信任证书。 | %26#8226; | 证书与客户端尝试连接的名称不匹配。 | %26#8226; | 证书日期不正确。 | 因此,必须确保客户端计算机信任证书颁发机构。 有关如何信任根证书颁发机构的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 297681 错误信息:This security certificate was issued by a company that you have not chosen to trust(该安全证书是由一家您不愿信任的公司颁发的) 有关其他信息,请访问下面的 Microsoft Web 站点: http://www.microsoft.com/technet/treeview/default.asp?url=/technet/prodtechnol/windowsserver2003/proddocs/standard/sag_PKPUnCertRoot.asp此外,如果使用您自己的证书颁发机构,则当向 RPC 代理服务器颁发证书时,必须确保该证书中的“公用名”字段或“颁发给”字段包含与 Internet 上的可用 RPC 代理服务器的 URL 相同的名称。例如,“公用名”字段或“颁发给”字段必须包含类似于 mail.contoso.com 的名称,“公用名”字段或“颁发给”字段不能包含计算机的内部完全合格的域名。例如,这些字段不能包含类似于 mycomputer.contoso.com 的名称。有关其他信息,请访问下面的 Microsoft Web 站点: http://www.microsoft.com/china/technet/prodtechnol/exchange/2003/library/ex2k3rpc.mspx
注意:由于 RPC over HTTP 不需要安全套接字层,因此如果不希望使用安全套接字层,则必须修改注册表以启用 RPC over HTTP。Microsoft 建议您启用安全套接字层并对 RPC over HTTP 通信要求安全套接字层。 |
配置 Exchange 计算机以使用 RPC over HTTP
RPC 代理服务器负责处理来自 Internet 的 Outlook 2003 RPC 请求。要成功地处理 RPC over HTTP 请求,必须在 Exchange 计算机上安装 Windows Server 2003 HTTP 代理上的 RPC 网络组件。要安装该组件,请执行下列步骤:
1. | 在运行 Windows Server 2003 的 Exchange Server 2003 计算机上,单击“开始”,指向“控制面板”,然后单击“添加或删除程序”。 |
2. | 依次单击“添加或删除 Windows 组件”、“网络服务”和“详细信息”。 |
3. | 单击“HTTP 代理上的 RPC”复选框,以将其选中,单击“确定”,然后单击“下一步”。 |
4. | “Windows 组件向导”完成配置组件后,单击“完成”。 |
在“Internet 信息服务”中配置 RPC 虚拟目录
配置 Exchange 计算机以使用 RPC over HTTP 后,必须在“Internet 信息服务”中配置 RPC 虚拟目录。为此,请执行下列步骤:
1. | 单击“开始”,指向“管理工具”,然后单击“Internet 信息服务 (IIS) 管理器”。 |
2. | 依次展开“服务器名(本地计算机)”、“网站”、“默认网站”,右键单击“Rpc”,然后单击“属性”。 |
3. | 单击“目录安全性”选项卡,然后单击“身份验证和访问控制”下的“编辑”。 |
4. | 单击“启用匿名访问”复选框,以将其清除。 |
5. | 单击“基本身份验证 (以明文形式发送密码)”复选框,以将其选中。
将出现以下消息: 选择的身份验证方法将导致密码以未加密形式在网络上传输。蓄意破坏系统安全性的人可以在身份验证过程中使用协议分析程序破译用户密码。有关用户身份验证的详细信息,请参阅联机帮助。此警告不适用于 HTTPS (或 SSL)连接。
确实要继续吗?注意:在此错误信息中,单词“HTTPS(orSSL)”是单词“HTTPS (or SSL)”的错误拼写。 |
6. | 单击“是”,然后单击“确定”。 |
7. | 单击“应用”,然后单击“确定”。 |
RPC 虚拟目录配置为使用基本身份验证。Microsoft 建议将 SSL 与基本身份验证结合使用。要在 RPC 虚拟目录上启用 SSL,必须获取并发布证书。本过程假定您已经获取并发布了证书。要配置 RPC 虚拟目录来为所有客户端连接要求 SSL,请执行下列步骤:
1. | 单击“开始”,指向“管理工具”,然后单击“Internet 信息服务 (IIS) 管理器”。 |
2. | 展开“网站”,展开“默认网站”,右键单击“Rpc”,然后单击“属性”。 |
3. | 单击“目录安全性”选项卡,然后单击“安全通信”下的“编辑”。 |
4. | 单击以选中“要求安全通道 (SSL)”复选框和“要求 128 位加密”复选框。
注意:Microsoft 建议您单击“要求 128 位加密”复选框,以将其选中。不过,即使您没有要求 128 位加密,RPC over HTTP 功能也可以正常执行。 |
5. | 单击“确定”,单击“应用”,然后单击“确定”。 |
配置 RPC 代理服务器以使用特定的端口
为 Internet 信息服务配置 RPC over HTTP 网络组件后,请配置 RPC 代理服务器。配置 RPC 代理服务器以使用特定的端口,以便与目录服务以及 Exchange 计算机上的信息存储进行通信。运行 Exchange Server 2003 安装程序时,Exchange 被配置为使用下表中的端口:
服务器 | 端口 | 服务 |
---|
Exchange | 6001 | 信息存储 |
全局编录 | 6004 | 目录服务 |
下面的三个注册表值是由 Exchange Server 2003 安装程序自动配置的。虽然您无需配置这些注册表值,但可能会需要验证这些注册表值的配置是否正确。 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeIS\ParametersSystem
数值名称:Rpc/HTTP Port
数值类型:REG_DWORD
数值数据:0x1771(十进制 6001)
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeSA\Parameters
数值名称:HTTP Port
数值类型:REG_DWORD
数值数据:0x1772(十进制 6002)
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeSA\Parameters
数值名称:Rpc/HTTP NSPI Port
数值类型:REG_DWORD
数值数据:0x1774(十进制 6004)
注意:不要修改这些注册表值。否则,RPC over HTTP 可能无法正常运行。
要配置 RPC 代理服务器以使用特定端口,请执行下列步骤。
第 1 步:配置 RPC 代理服务器,以使用企业网络内部为 RPC over HTTP 指定的默认端口
为此,请执行下列步骤:
1. | 在 RPC 代理服务器上,启动“注册表编辑器”。
警告:“注册表编辑器”使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以解决因“注册表编辑器”使用不当而导致的问题。使用“注册表编辑器”需要您自担风险。 |
2. | 找到并单击下面的注册表子项: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\RpcProxy |
3. | 在右窗格中,右键单击“ValidPorts”,然后单击“修改”。 |
4. | 删除“数值数据”框中的所有信息,然后键入以下信息: 服务器 NETBIOS 名称:6001;服务器 FQDN:6001;服务器 NetBIOS 名称:6004;服务器 FQDN:6004 注意: %26#8226; | 将服务器 NETBIOS 名称替换为服务器的 NetBIOS 名称。将服务器 FQDN 替换为服务器的完全合格的域名 (FQDN)。 | %26#8226; | 要确定服务器的 NetBIOS 名称和完全合格的域名,请启动命令提示符,键入 ipconfig /all,然后按 Enter 键。
“Windows IP Configuration”下将显示类似于如下所示的信息: 主机名 .................:mycomputer主 DNS 后缀 ........: contoso.com 主机名是计算机的 NetBIOS 名称。主机名加上主 DNS 后缀就是计算机的完全合格的域名。在本例中,完全合格的域名是 mycomputer.contoso.com。 |
|
5. | 单击“确定”,然后退出“注册表编辑器”。 |
注意:您还可以使用 Rpccfg 工具来设置和排除端口分配故障。Rpccfg 工具包含在“Windows Server 2003 资源工具包”工具中。要获取“Windows Server 2003 资源工具包”,请访问以下 Microsoft Web 站点:
http://www.microsoft.com/downloads/details.aspx?familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd%26amp;displaylang=en第 2 步:配置所有全局编录,以使目录服务的 RPC over HTTP 使用特定的端口
为此,请执行下列步骤:
1. | 启动注册表编辑器。
警告:“注册表编辑器”使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以解决因“注册表编辑器”使用不当而导致的问题。使用“注册表编辑器”需要您自担风险。 |
2. | 找到并单击下面的注册表子项: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters |
3. | 在“编辑”菜单上,指向“新建”,然后单击“多字符串值”。 |
4. | 将新注册表值命名为 NSPI interface protocol sequences。 |
5. | 右键单击“NSPI interface protocol sequences”,然后单击“修改”。 |
6. | 在“数值数据”框中,键入 ncacn_http:6004,然后单击“确定”。 |
7. | 退出“注册表编辑器”,然后重新启动计算机。 |
配置 Outlook 2003 计算机以使用 RPC over HTTP
测试服务器上的 RPC 虚拟目录配置,然后在 Outlook 2003 中配置一个电子邮件配置文件。为此,请执行下列步骤:
第 1 步:测试 RPC 虚拟目录配置
从客户端计算机中,访问 RPC 虚拟目录以确保其配置正确。为此,请执行下列步骤:
1. | 在客户端计算机上,启动 Internet Explorer,在“地址”列表中键入 RPC 虚拟目录的 URL,然后单击“转到”。
例如,键入 https://mail.contoso.com/rpc,然后单击“转到”。 |
2. | 如果收到以下消息,请单击“确定”: 即将通过安全连接查看网页。
该网站上的其它任何人都无法看到您与该站点的交换信息。 |
3. | 如果收到一条消息,提示您证书是由您不愿信任的公司颁发的,请确保客户端计算机信任颁发该证书的根证书颁发机构。
注意:通常,如果您没有将服务器配置为使用第三方证书,则将收到该消息。有关该问题的其他信息,请参见本文中的“Exchange 配合 RPC over HTTP 使用的建议”部分。 |
4. | 提示您输入凭据时,以通用命名约定 (UNC) 格式键入用户名,键入密码,然后单击“确定”。
例如,键入域\用户名格式的用户名。 |
您会收到下面的错误信息: The page cannot be displayed
HTTP Error 403.2 - Forbidden:Read access is denied.
Internet Information Services (IIS)显示此错误信息是预期的行为。此错误信息说明服务器和客户端配置正确。
第 2 步:在 Outlook 2003 中配置邮件配置文件以使用 RPC over HTTP
要从客户端计算机使用 RPC over HTTP,请创建使用所需 RPC over HTTP 设置的 Outlook 邮件配置文件。这些设置将启用安全套接字层 (SSL) 通信和基本身份验证。Microsoft 建议您对所有通过使用 RPC over HTTP 连接到 Exchange 的配置文件启用“使用缓存 Exchange 模式”选项。不过,为了测试 RPC over HTTP,最好禁用该选项。测试 RPC over HTTP 配置后,请启用“缓存 Exchange”模式。要创建用于 RPC over HTTP 的 Outlook 配置文件,请执行下列步骤:
1. | 在安装 Outlook 2003 的客户端计算机上,单击“开始”,然后单击“控制面板”。 |
2. | 如果控制面板以分类视图显示,单击“切换到经典视图”。 |
3. | 双击“邮件”,然后单击“显示配置文件”。 |
4. | 单击“添加”,为配置文件键入一个描述性的名称,然后单击“确定”。 |
5. | 单击“添加新电子邮件帐户”,然后单击“下一步”。 |
6. | 单击“Microsoft Exchange Server”,然后单击“下一步”。 |
7. | 在“Microsoft Exchange Server”框中,键入 Exchange 计算机的完全合格的域名。
例如,键入我的电脑.contoso.com。 |
8. | 单击“使用缓存 Exchange 模式”复选框,以将其清除。
重要说明:请暂时关闭“缓存 Exchange”模式以测试您的配置。Microsoft 建议您在测试 RPC over HTTP 配置后启用“缓存 Exchange”模式。 |
9. | 在“用户名”框中,键入要使用的用户帐户名,然后单击“更多设置”。
Outlook 可能会尝试解析此用户名和 Exchange 计算机的主机名。如果收到错误信息,或者出现“检查名称”对话框,请单击“取消”。 |
10. | 在“Microsoft Exchange Server”对话框中,单击“连接”选项卡。 |
11. | 单击“使用 Internet Explorer 或第三方拨号程序连接”,单击“使用 HTTP 连接到我的 Exchange 邮箱”复选框,以将其选中,然后单击“Exchange 代理服务器设置”。
如果“连接”选项卡上未显示“通过 Internet 连接到 Exchange”区域,请参阅本文的“ 疑难解答 ”一节。 |
12. | 在“使用此 URL 连接到我的 Exchange 代理服务器”框中,键入用户可以在 Internet 上连接到的 Exchange 计算机的 URL。
例如,键入 https://mail.example.com。 |
13. | 单击“仅使用 SSL 连接”复选框,以将其选中。 |
14. | 如果要启用相互身份验证,请单击“使用 SSL 连接时相互验证会话”复选框,以将其选中,然后在“代理服务器的主体名称”框中键入 Exchange 计算机的公共 Internet URL。
键入以下格式的 URL: msstd:public_URL_of_the_server
注意:不是一定要启用相互身份验证。 |
15. | 要测试 RPC over HTTP 配置,请单击“在快速网络中,首先使用 HTTP 连接到 Exchange,然后使用 TCP/IP 连接”复选框和“在低速网络中,首先使用 HTTP 连接到 Exchange,然后使用 TCP/IP 连接”复选框,以将其选中。
注意:测试 RPC over HTTP 配置后,您可能只希望使用这些选项中的一个选项。这些选项指定 Outlook 如何使用 RPC over HTTP 连接到 Exchange。Outlook 基于网络连接的速度确定连接类型。在默认配置中,“在快速网络中,首先使用 HTTP 连接到 Exchange,然后使用 TCP/IP 连接”复选框处于未选中状态。“在低速网络中,首先使用 HTTP 连接到 Exchange,然后使用 TCP/IP 连接”复选框处于选中状态。这种配置下,会出现以下两种情况: %26#8226; | 如果 Outlook 检测到快速连接,则它会尝试使用 TCP 进行连接。如果 TCP 连接失败,Outlook 将尝试使用 HTTP 进行连接。快速连接是指速度高于 128 千位/秒 (Kbps) 的连接。 | %26#8226; | 如果 Outlook 检测到低速连接,则它会尝试使用 HTTP 连接。如果 HTTP 连接失败,Outlook 将尝试使用 TCP 连接。低速连接是指速度低于或等于 128 Kbps 的连接。 | 此逻辑允许 Outlook 在网络连接可用时连接到 Exchange。 |
16. | 在“连接到我的 Exchange 代理服务器时使用此验证”列表中,单击“基本身份验证”。 |
17. | 单击确定,再单击确定。 |
18. | 依次单击“下一步”、“完成”、“关闭”,然后单击“确定”。 |
Outlook 已被配置为使用 RPC over HTTP。
第 3 步:测试 Outlook 连接
验证 Outlook 是否使用 RPC over HTTP 连接到 Exchange 计算机。为此,请执行下列步骤:
1. | 单击“开始”,单击“运行”,键入 outlook /rpcdiag,然后单击“确定”。 |
2. | 在“用户名”框和“密码”框中键入您的凭据,然后单击“确定”。 |
3. | 如果“Exchange Server 连接状态”对话框的“Conn”列中显示“HTTPS”,说明某个服务是使用 RPC over HTTP 连接的。 |
疑难解答
%26#8226; | 如果“Microsoft Exchange Server”对话框中的“连接”选项卡上没有显示“通过 Internet 连接到 Exchange”区域,请确保客户端计算机满足配置 RPC over HTTP 的要求。如果安装了所需的 Service Pack 和更新程序包,而“连接”选项卡上未显示“通过 Internet 连接到 Exchange”区域,请编辑 Windows 注册表。为此,请执行下列步骤: 1. | 启动注册表编辑器。
警告:“注册表编辑器”使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以解决因“注册表编辑器”使用不当而导致的问题。使用“注册表编辑器”需要您自担风险。 | 2. | 找到并单击下面的注册表子项: HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\RPC | 3. | 如果以下注册表项不存在,请创建它: 数值名称:EnableRPCtunnelingUI 数值类型:REG_DWORD 数值数据:1 | 4. | 退出“注册表编辑器”。 |
|
%26#8226; | 系统提示您输入凭据时,必须使用域\用户名 格式输入。 |
%26#8226; | 要支持使用用户主体名称 (UPN) 格式的凭据,请在每台基于 Windows XP 的计算机中安装以下知识库文章所介绍的修复程序: 830355 您不能使用您的用户主体名称 (UPN) 通过 Internet 使用 Outlook 2003 以下凭据是 UPN 格式的凭据的示例: 用户名@contoso.com |
参考
有关如何部署 Exchange Server 2003 的其他信息,请访问下面的 Microsoft Web 网站:
http://www.microsoft.com/china/technet/prodtechnol/exchange/2003/library/ex2k3rpc.mspx有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
831050 Outlook 2003 中的 Exchange Over the Internet 功能的配置选项
826486 无法通过代理自动配置脚本使用 RPC Over HTTP
822178 Exchange Server 2003 功能的依存关系和要求概述 有关其他信息,请访问下面的 Microsoft Web 站点:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/rpc/rpc/remote_procedure_calls_using_rpc_over_http.asp