了解 Exchange 2007 中的自签名证书

 

适用于: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

上一次修改主题: 2009-12-23

数字证书是一种电子文件,其作用如同联机密码一样,可验证用户或计算机的身份。数字证书还用于为运行 Microsoft Exchange 的服务器与客户端计算机或设备之间的通信建立 SSL 加密的通道。数字证书是由证书颁发机构 (CA) 颁发的声明,由 CA 担保证书持有者的身份并启用加密通信。

数字证书的作用如下:

  • 它们验证其持有者(人员、网站,甚至是路由器之类的网络资源)确实与自己所声称的身份相符。

  • 帮助防止联机交换的数据被偷窃或篡改。

数字证书可由受信任的第三方 CA 或 Microsoft Windows 公钥基础结构 (PKI) 通过使用证书服务颁发,也可以通过自行签署产生。在安装 Microsoft Exchange Server 2007 以及客户端访问服务器角色或统一消息服务器角色时,如果没有任何以前存留的数字证书,将安装自签名证书。本文档概述 Exchange 2007 中的自签名证书以及何时应使用和何时不应使用。

有关 Exchange 2007 客户端访问服务器安全性的详细信息,请参阅了解客户端访问服务器的 SSL

自签名证书概述

在安装 Exchange 2007 以及客户端访问服务器角色时,将创建自签名证书。自签名证书用于帮助保护组织内的 Exchange 2007 服务器之间的通信,并且提供临时的方法来对客户端通信进行加密,直到获取并安装备用证书。自签名证书有两个“主题备用名称”条目:一个用于客户端访问服务器的 NetBIOS 名称,一个用于客户端访问服务器的完全限定的域名 (FQDN)。尽管自签名证书可用于对客户端访问服务器与其他 Exchange Server 2007 服务器角色之间的通信进行加密,但是建议不要将其用于客户端应用程序和设备。由于自签名证书的局限性,建议将自签名证书替换为受信任的第三方证书或由 Windows PKI 签署的证书。

note注意:
除了邮箱服务器角色之外的每个 Exchange 2007 服务器角色上均安装自签名证书。

自签名证书的局限性

下表介绍自签名证书的一些局限性。

  • 过期日期:对于 Exchange 2007 Service Pack 2 (SP2) 之前的 Exchange 2007 版本,自签名证书自创建之日起一年内有效。在 Exchange 2007 SP2 或更高版本中,自签名证书自创建之日起五年内有效。证书过期后,必须使用 New-ExchangeCertificate cmdlet 手动生成新的自签名证书。

  • Outlook Anywhere:自签名证书无法用于 Outlook Anywhere。如果要使用 Outlook Anywhere,建议从 Windows PKI 或受信任的第三方商业机构那里获取证书。

  • Exchange ActiveSync:自签名证书无法用于对 Microsoft Exchange ActiveSync 设备与 Exchange 服务器之间的通信进行加密。建议从 Windows PKI 或受信任的第三方商业机构那里获取证书,以用于 Exchange ActiveSync。

  • Outlook Web Access:Microsoft Outlook Web Access 用户将收到一条提示,通知正在用于帮助保护 Outlook Web Access 的证书不受信任。出现该错误的原因是证书不是由客户端信任的颁发机构签署的。用户可以忽略该提示并对 Outlook Web Access 使用自签名证书。但是,建议从 Windows PKI 或受信任的第三方商业机构那里获取证书。

证书过期

自签名证书在安装客户端访问服务器角色之后一年内有效,或在 Exchange 2007 SP2 之前的 Exchange 2007 版本中创建后一年内有效。对于 Exchange 2007 SP2 或更高版本,自签名证书自创建之日起五年内有效。如果自签名证书过期,依赖默认自签名证书的内部组件仍可继续运行。但是,自签名证书过期后,会在事件查看器中记录以下事件:

事件类型:错误

事件源:MSExchangeTransport

事件类别:TransportService

事件 ID: 12014

日期:日期

时间:时间

用户:不适用

计算机:服务器名

说明:

Microsoft Exchange 在本地计算机上的个人存储中找不到包含域名 Domain_Name 的证书。因此,对于 FQDN 参数为 FQDN 的连接器“默认服务器”而言,无法支持 STARTTLS SMTP 谓词。如果未指定连接器的 FQDN,则将使用该计算机的 FQDN。请验证连接器配置和已安装的证书,以确保该 FQDN 存在包含域名的证书。如果此证书存在,请运行 Enable-ExchangeCertificate -Services SMTP,以确保 Microsoft Exchange 传输服务拥有证书密钥的访问权限。

有关详细信息,请参阅位于 https://go.microsoft.com/fwlink/?LinkID=34258 的帮助和支持中心。

事件类型:警告

事件源:MSExchangeTransport

事件类别:TransportService

事件 ID: 12015

日期:日期

时间:时间

用户:不适用

计算机:服务器名

说明:

内部传输证书已过期。

指纹:Thumb_Print_Value

有关详细信息,请参阅位于 https://go.microsoft.com/fwlink/?LinkID=34258 的帮助和支持中心。

最佳做法是在过期之前续订自签名证书。可以使用 Exchange 命令行管理程序,通过克隆证书来续订自签名证书。可以先使用 Get-ExchangeCertificate cmdlet 获取域的当前默认证书的指纹,来克隆证书。

note注意:
以下 cmdlet 必须从本地 Exchange 2007 客户端访问服务器运行,而不能远程运行。
Get-ExchangeCertificate -DomainName CAS01.contoso.com

在**“服务”下,从证书列表中选择包含“W”**的证书(如选择 IP.WS)。“W”表明此证书是分配给 IIS 的。

若要克隆证书,请运行以下 cmdlet:

Get-ExchangeCertificate -Thumbprint c4248cd7065c87cb942d60f7293feb7d533a4afc | New-ExchangeCertificate

然后,将使用新的过期日期(运行 cmdlet 之后的一年)标记新克隆的证书。

何时可以使用自签名证书

可以在多种协议中和不同条件下使用自签名证书对通信进行加密。加入域的 Outlook 客户端可以使用自签名证书对电子邮件进行加密并对客户端与 Exchange 服务器之间的通信通道进行加密。如上所述,Outlook Web Access 用户也可以使用自签名证书对通信通道进行加密。您还可以使用自签名证书对不同 Active Directory 目录服务站点中的客户端访问服务器之间的通信进行加密。该方案(称为 CAS-CAS 代理)要求允许修改注册表。

对加入域的 Outlook 2007 客户端使用自签名证书

对加入域的 Microsoft Office Outlook 2007 客户端使用自签名证书时,不必进行任何其他配置。这些客户端可以进行连接,但不会收到任何安全警告,因为用于连接到自动发现服务的 URL 全部都引用客户端访问服务器的内部 FQDN。自签名证书具有映射到服务器的 NetBIOS 名称的公用名。自签名证书还将服务器的 FQDN 包含为“主题备用名称”证书字段中存储的附加 DNS 名称。这样,加入域的客户端可以成功地连接到自动发现服务,而不会收到任何证书警告,因为证书尚未过期,并且要连接到的服务器的 FQDN 存储在证书的“主题备用名称”中。尽管客户端无法验证自签名证书直至受信任的根证书,但在加入域的客户端使用自签名证书连接到自动发现服务时,允许该验证失败。不过,建议不要长期使用该自签名证书,因为该证书主要是为获取正确证书的权宜之计,以便 Outlook 2007 客户端可以立即开始使用 Exchange 2007 功能。

结合使用自签名证书和代理

为成功地使用自签名证书对代理方案中的客户端与服务器之间的通信进行加密,必须先执行几个步骤。有关代理的详细信息,请参阅了解代理和重定向

必须修改注册表以允许结合使用自签名证书和代理。客户端在连接到 Exchange 2007 客户端访问服务器时将收到一条提示,因为大多数客户端应用程序(诸如 Exchange ActiveSync 和 Microsoft Office Outlook 2007)将自签名证书视为无效证书。Exchange ActiveSync 和 Outlook Web Access 均支持从一个客户端访问服务器代理到另一个客户端访问服务器。为在使用自签名证书时也可以成功地进行代理,必须在面向 Internet 的客户端访问服务器上配置下列注册表项:

  • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeOWA\AllowInternalUntrustedCerts = 1

  • HKLM\System\CurrentControlSet\Services\MSExchangeOWA\AllowExternallUntrustedCerts = 1

这些注册表项将允许面向 Internet 的客户端访问服务器使用未面向 Internet 的客户端访问服务器上安装的自签名证书连接到该未面向 Internet 的客户端访问服务器。如果面向 Internet 的客户端访问服务器使用自签名证书进行客户端通信,上面所述的所有局限性均适用。

UNRESOLVED_TOKEN_VAL(exRegistry) 

何时无法使用自签名证书

尽管支持对加入域的 Microsoft Office Outlook 2007 客户端和 Outlook Web Access 使用自签名证书,但是,建议除了对组织内的 Exchange 2007 服务器之间的通信进行加密之外,不要处于其他目的长期使用自签名证书。为了支持许多(如果并非所有)客户端访问服务器功能(诸如 Exchange ActiveSync、Outlook Web Access 和 Outlook Anywhere),建议从 Windows PKI 或受信任的第三方 CA 那里获取证书,并确保将该证书导入每台计算机或设备上的受信任根存储中。

important要点:
不支持对 Outlook Anywhere 或 Exchange ActiveSync 使用自签名证书。

详细信息

有关 SSL、证书和 Exchange 2007 的详细信息,请参阅下列主题: