我们有一个 Exchange 2010 Server,在我们的 Active Directory 域中运行,其内部主机名为server.example.local
。
该服务器已配置为在任何地方进行 Exchange,但当前已安装一个名为的自签名证书server.example.local
。
在内部,客户端连接并正常工作,但在外部,正如您所预料的那样,我们遇到了证书错误。
我即将购买一个 UCC SSL 证书,安装在服务器上,证书上包含所有相关的 SAN 来纠正这个问题,但由于获取以.local
主题备用名称为受信任名称的证书存在明显问题,我希望在内部网络上配置客户端,以便它们不使用任何对.local
主机名的引用。
我已将服务器的外部 DNS 名称配置为exchange.example.com
,并创建了一个 CNAME,autodiscover.example.com
该 CNAME 也(正确)指向exchange.example.com
。我还为这两个主机名配置了内部 DNS 记录,它们指向同一服务器的内部接口。我预计这里不会出现任何问题。
我现在正在尝试重新配置内部自动发现,以便 Outlook 尝试连接到exchange.example.com
。我已按照KB940726为此事做准备,这似乎工作正常。没有生成任何错误,我能够使用 ADSI 编辑验证 AD 中的 CAS 名称。
我刚刚尝试使用新创建的测试用户帐户和新的 Exchange 邮箱对此进行测试,并且 Outlook 2007 在内部网络上连接良好,但深入查看 Exchange 配置文件时,Outlook 仍将服务器名称解析为server.example.local
。
可能是自签名证书导致 Outlook 显示服务器名称为server.example.local
,或者我的内部自动发现配置仍然存在问题?
编辑
我已证明 Outlook 返回 不是由证书导致的server.example.local
,方法是安装另一个名为 的自认证证书test.example.com
。创建新的 Outlook 配置文件时,我收到了我所期望的不匹配错误,但在接受证书并完成 Outlook 配置文件的配置后,它仍然显示server.example.local
为服务器名称。这意味着如果我现在购买 UCC 证书,外部客户端将正常工作,但内部客户端将显示证书名称不匹配。
有什么想法可以开始诊断这个问题吗?
答案1
我相信我已经设法使用 ADSI 编辑解决了这个问题。
尽管我运行了问题中链接的知识库文章中的命令,但我发现使用 ADSI 编辑有两个自动发现条目。
- CN=exchange.example.com
- CN=服务器
我已删除该CN=server
条目,并且必须修改对象serviceBindingInformation property
以CN=exchange.example.com
反映正确的外部 URL。
现在,当我设置新的 Exchange 配置文件或为现有用户打开 Outlook 时,我收到证书名称不匹配错误。但这是意料之中的,因为我的证书仍然是自签名证书,只有名称server.example.local
。我现在可以清楚地看到,内部客户端正在寻找exchange.example.com
证书上的名称。
我现在要订购 UCC 证书,其中包含正确的 SAN 名称exchange.example.com
和autodiscover.example.com
,我相信现在我的系统可以正常运行。
更新
我现在已经订购并安装了名为 的受信任证书exchange.example.com
,其 SAN 为autodiscover.example.com
,我可以报告 Outlook Anywhere 在以下情况下运行良好
- 在
example.local
企业网络内部,使用与域相连的 PC。 - 使用漫游域连接的笔记本电脑进行外部访问
- 通过移动设备(iPhone 和 iPad)进行外部操作
- 与非域连接的 PC 进行外部连接。
- OWA 不再出现 SSL 错误。