配置 Intranet 防火墙

 

上一次修改主题: 2006-04-14

本主题讨论如何使用同时包含外部防火墙和内部防火墙的外围网络。下列各节介绍如何配置外围网络、Intranet 防火墙和 ISA 服务器,以使 Exchange 正常工作。

SP2 中的新增功能   通过发布 Microsoft® Exchange Server 2003 Service Pack 2 (SP2),Microsoft 推出了直接强制技术,使 Exchange ActiveSync® 可以在电子邮件到达服务器时立即将其发送到移动设备。通过直接强制技术,后端服务器只要收到要传输到移动设备的电子邮件或数据,就会向前端服务器发送 UDP 通知。此传输要求在防火墙上打开 UDP 端口 2883,以便允许从后端服务器到前端服务器的单向通信。

有关部署直接强制技术以及该技术对防火墙配置的影响的详细信息,请参阅下列 Exchange Server 博客文章:

高级防火墙服务器(例如 ISA)不是 Intranet 防火墙时(在高级防火墙与前端服务器之间存在其他防火墙),则必须在 Intranet 防火墙上打开所需的协议端口,使高级防火墙服务器可以转发请求。

高级防火墙服务器转发请求时所需的协议端口

目标端口号/传输 协议

443/TCP 入站或 80/TCP 入站

HTTPS(通过 SSL 保护的 HTTP)或 HTTP,取决于高级防火墙(例如 ISA)是否减轻了 SSL 解密的负担

993/TCP 入站

通过 SSL 保护的 IMAP

995/TCP 入站

通过 SSL 保护的 POP

25/TCP 入站

SMTP

如果高级防火墙要执行对用户进行身份验证等任务,则可能需要其他端口。有关详细信息,请参阅高级防火墙文档。

note注意:
其他防火墙供应商可能会建议您针对 IP 分段对其产品进行其他一些配置设置。

如果将前端服务器放置在外围网络中,则前端服务器必须能够发起与后端服务器和 Active Directory® 目录服务服务器的连接。因此,将为内部防火墙配置规则,以便允许来自外围网络的入站端口 80 通信传入公司网络。此规则将不允许来自公司网络内部的出站端口 80 通信传入前端服务器。下文对端口的所有讨论均指从外围网络中的服务器向后端服务器传输通信的入站端口。

note注意:
首选的部署方法是将前端服务器放置在包含后端服务器的 Intranet 上,并使用高级防火墙作为外围网络。只有要求必须将 Exchange 前端服务器放置在外围网络中时,才需要按照本节操作。

在任何情况下,都必须在内部防火墙上打开所有支持的协议端口。不必打开 SSL 端口,因为前端服务器与后端服务器之间的通信不使用 SSL。下表列出 Intranet 防火墙所需的端口。这些端口针对入站通信(从前端服务器到后端服务器)。

Intranet 防火墙所需的协议端口

端口号/传输 协议

80/TCP 入站

HTTP

143/TCP 入站

IMAP

110/TCP 入站

POP

25/TCP 入站

691/TCP

SMTP

链路状态算法路由

note注意:
在此表中,“入站”指的是应将防火墙配置为允许外围网络中的计算机(例如高级防火墙服务器)发起与公司网络上的前端服务器的连接。前端服务器从不需要发起与外围网络中的计算机的连接。前端服务器只响应由外围网络中的计算机发起的连接。

要与 Active Directory 进行通信,Exchange 前端服务器需要打开 LDAP 端口。需要 TCP 和 UDP:前端服务器上的 Windows 将向域控制器发送 389/UDP LDAP 请求,以检查域控制器是否可用;此后的 LDAP 通信将使用 TCP。还会使用 Windows Kerberos 身份验证;因此,还必须打开 Kerberos 端口。Kerberos 也需要 TCP 和 UDP:默认情况下,Windows 使用 UDP/88,但是当数据大于 UDP 的最大数据包大小时,将使用 TCP。下表列出与 Active Directory 和 Kerberos 进行通信时所需的端口。

Active Directory 通信和 Kerberos 所需的端口

端口号/传输 协议

389/TCP

LDAP 到目录服务

389/UDP

 

3268/TCP

LDAP 到全局编录服务器

88/TCP

Kerberos 身份验证

88/UDP

 

有两组可选端口可以在此防火墙上打开。打开这些可选端口的决定取决于公司的策略。每个决定都涉及在安全、管理难易和功能方面的折衷。

前端服务器需要访问 DNS 服务器以正确地查找服务器名称(例如,要将服务器名称转换为 IP 地址)。下表列出访问所需的端口。

如果不希望打开这些端口,则必须在前端服务器上安装 DNS 服务器,并为所有可能需要联系的服务器输入相应的名称到 IP 的映射。此外,还必须配置所有 Active Directory SRV 记录,因为前端服务器必须能够找到域控制器。如果选择安装 DNS 服务器,则一定要在对组织进行更改时保持这些映射最新。

访问 DNS 服务器所需的端口

端口号/传输 协议

53/TCP

DNS 查找

53/UDP

 

note注意:
大多数服务使用 UDP 进行 DNS 查找,只有在查询大于最大数据包大小时才使用 TCP。但是,默认情况下,Exchange SMTP 服务使用 TCP 进行 DNS 查找。有关详细信息,请参阅 Microsoft 知识库文章 263237“XCON: Windows 2000 and Exchange 2000 SMTP Use TCP DNS Queries”(英文)。

下表列出允许跨 Intranet 防火墙的 IPSec 通信的要求。只需要启用适用于所配置的协议的端口;例如,如果选择使用 ESP,则只需要允许跨防火墙的 IP 协议 50。

IPSec 所需的端口

端口号/传输 协议

IP 协议 51

身份验证头 (AH)

IP 协议 50

封装式安全措施负载 (ESP)

500/UDP

Internet 密钥交换 (IKE)

88/TCP

Kerberos

88/UDP

 

DSAccess 不再使用 RPC 进行 Active Directory 服务发现。但是,因为前端服务器配置为对请求进行身份验证,所以,IIS 仍必须可以通过 RPC 访问 Active Directory,以便对请求进行身份验证。因此,必须打开下面的“身份验证所需的 RPC 端口”表中列出的 RPC 端口。

如果拥有已锁定的外围网络,而其中的前端服务器无法对用户进行身份验证,则可能不允许打开下面的“身份验证所需的 RPC 端口”表中列出的 RPC 端口。没有这些 RPC 端口,前端服务器将无法进行身份验证。可以将前端服务器配置为允许匿名访问,但是应了解这样做的风险。有关详细信息,请参阅 HTTP 的身份验证机制

不要停止所有 RPC 通信,建议您通过打开一个端口限制 RPC 通信(如下节中所述)。

如果所需的功能要求使用 RPC(例如身份验证或隐式登录),但是不希望打开高于 1024 的大范围端口,则可以将域控制器和全局编录服务器配置为对所有 RPC 通信使用一个已知端口。有关如何限制 RPC 通信的详细信息,请参阅 Microsoft 知识库文章 224196“将 Active Directory 复制流量限制在特定端口”。

要对客户端进行身份验证,必须在前端服务器可能通过 RPC 联系的任何服务器(例如全局编录服务器)上设置注册表项(如上面的知识库文章中所述以及下面所列)。将以下注册表项设置为特定端口(例如 1600):

HKEY_LOCAL_MACHINE\CurrentControlSet\Services\NTDS\Parameters

注册表值:TCP/IP 端口值类型:REG_DWORD 数值数据:(可用端口)

在外围网络与 Intranet 之间的防火墙上,只需要打开两个针对 RPC 通信的端口  RPC 端口映射器 (135) 和指定的端口(端口 1600,如下表中所列)。前端服务器首先尝试使用 RPC 通过端口 135 与后端服务器联系,后端服务器使用其实际使用的 RPC 端口做出响应。

note注意:
Exchange 系统管理器使用 RPC 来管理 Exchange 服务器。建议不要使用前端服务器上的 Exchange 系统管理器来管理后端服务器,因为这需要配置从前端服务器对每台后端服务器的 RPC 访问。而是应从 Exchange 客户端计算机或后端服务器使用 Exchange 系统管理器来管理后端服务器。仍可以使用前端服务器上的 Exchange 系统管理器来管理前端服务器本身。

身份验证所需的 RPC 端口

端口号/传输 协议

135/TCP

RPC 端口终结点映射器

1024+/TCP

1600/TCP

随机服务端口

(示例)特定的 RPC 服务端口(如果限制)

 
显示: