使用 PowerShell 脚本管理旧版 Exchange URL 地址 | 15#23
当前的文章专门介绍我编写的一个小 PowerShell 脚本,该脚本是为了简化将现有 Exchange 基础结构“准备”到 Exchange 2013 共存环境的任务而创建的。
PowerShell 脚本包含的选项将帮助我们配置 Exchange CAS 服务器 URL 地址、身份验证类型等,此外,还可以查看和导出有关现有 Exchange 基础架构的信息。
关于 PowerShell 脚本的使用,我的主要建议是:当心!
PowerShell 命令对现有 Exchange CAS 服务器进行的更改/更新可能非常引人注目。在使用“进行更新”的 PowerShell 命令之前,请查看 PowerShell 脚本的“幕后”,并验证您是否完全理解众多选择中的每一个。
使用PowerShell脚本的原因
将现有 Exchange 环境准备为 Exchange 2013 共存环境(其中我们添加 Exchange CAS 2013 基础结构)的任务可能并不那么简单,尤其是在企业 Exchange 环境中,因为准备任务包含许多我们需要执行的任务。需要为每个现有的 Exchange CAS 服务器实施。
我们不应该忘记最重要的阶段是在开始执行不同任务的步骤之前:规划阶段。
我们需要对现有的 Exchange 基础设施有一个非常清晰的地图,例如不同的站点、每个站点中的 Exchange 服务器的整体以及有关每个 Exchange 服务器的具体详细信息,例如:每个站点的 Exchange 服务器的编号、Exchange服务器版本、Exchange服务器角色等等。
我们需要配置的 Exchange 服务\组件。
旧版 Exchange CAS 服务器基础结构的准备清单包括以下部分。 “管理 Exchange CAS 服务器设置.ps1”PowerShell 脚本包含每个部分的参考。
Exchange环境准备PowerShell脚本的内容
“管理 Exchange CAS 服务器设置”PowerShell 脚本的结构包括以下菜单结构:
主要有四个部分,都是一次性“画”出来的。每个“部分”都与不同的管理任务相关,该任务涉及 Exchange 2013 共存环境所需的 Exchange CAS 服务器的准备工作。
A 部分:获取有关 Exchange Web 服务 URL 和 Outlook Anywhere 配置的信息
此部分用于获取有关现有 Exchange 基础结构的信息。
该脚本将在屏幕上显示信息,同时将信息导出到 HTML 文件。
导出的文件保存在 C:\ 驱动器上名为:INFO 的文件夹和名为:“Exchange URL 地址和 Outlook Anywhere 信息”的子文件夹中。 ”
将显示的信息将包括有关以下 Exchange 服务的信息:
- Exchange web service
内部和外部 URL 地址
- Exchange OWA
-
内部和外部 URL 地址
- Exchange ECP
内部和外部 URL 地址
- Exchange ActiveSync
内部和外部 URL 地址
- Exchange OAB
内部和外部 URL 地址
- Exchange, Outlook Anywhere settings
所有可用的设置
- Exchange Autodiscover settings
自动发现服务内部Uri
此部分包括两个菜单选项:
菜单 1:查看有关所有现有 Exchange 服务器 URL 地址的信息
使用此选项将查询 Active Directory 有关所有可用 Exchange CAS 服务器的信息,并显示每个 Exchange CAS 服务器的信息。
菜单 2:查看有关特定 Exchange 服务器 URL 地址的信息
此选项将显示在屏幕上并将特定 Exchange CAS 服务器的信息导出为 HTML。
在下面的屏幕截图中,我们可以从选择菜单1选项时屏幕上显示的信息中看到结果。
“顶部”是通知区域,通知我们“PowerShell 命令执行了什么”以及保存在 C:\INFO 中的 HTML 报告的位置
结果分为专用部分,用于每个 Exchange CAS 服务器服务,例如 Exchange Web 服务等。
每个部分都包含有关所有可用 Exchange CAS 服务器的信息。在我们的特定场景中,我们可以看到有关三个 Exchange CAS 服务器的信息:STS、EX01 和 EX02
HTML 报告将保存在:C:\INFO\Exchange URL 地址和 Outlook Anywhere 信息
所有 Exchange CAS 服务器或特定 Exchange CAS 服务器的 HTML 报告
在下面的屏幕截图中,我们可以看到 HTML 报告中的示例,其中包含有关名为 - Exchange Web 服务 - Unified report.html 的所有现有 Exchange CAS 服务器的信息,以及我们使用菜单 2 创建的两个附加 HTML 报告 选项,使我们能够显示有关特定 Exchange CAS 服务器(在我们的场景中为 EX01 和 EX02)的信息。
在下面的屏幕截图中,我们可以看到 HTML Exchange CAS 服务器报告的示例。
按 Exchange 服务器版本列出的 HTML 报告
现有 Exchange 基础结构的 HTML 报告将包括每个 Exchange 服务器版本的专用报告:Exchange 2007、Exchange 2010 和 Exchange 2013。
B 部分:管理 Exchange 服务器 URL 地址
菜单3:设置Exchange Web服务的URL地址
以下菜单将使我们能够设置\配置以下 Exchange CAS 服务的值:
| 1 | Exchange web service | Internal and external URL address |
| 2 | Exchange OWA | Internal and external URL address |
| 3 | Exchange ECP | Internal and external URL address |
| 4 | Exchange ActiveSync | Internal and external URL address |
在下面的屏幕截图中,我们可以看到我们有两种可能的选择:
对外部和内部 Exchange CAS 服务使用相同的命名空间(选项 A),或者选择实施一个选项,其中我们对内部和外部 URL 地址使用不同的命名空间(选项 B )。
示例:在以下场景中,我们选择选项 A,其中我们将为外部 + 内部 URL 地址使用相同的命名空间。
在我们的示例中,我们选择配置名为:EX02 的 Exchange CAS 服务器,我们将使用的主机名是:mail.o365info.com
在下面的屏幕截图中,我们可以看到结果:PowerShell命令将使用主机名-mail.o365info.com来“构建”不同Exchange CAS服务器服务的URL地址,例如Exchange Web服务URL地址:https://mail.o365info.com/EWS/Exchange.asmx 等等。
PowerShell 命令的输出将告知操作已成功完成,并显示 URL 地址中的值。
C 部分:管理 Exchange 服务器自动发现 SCP URL 地址
菜单 4:设置更改服务器自动发现 SCP URL 地址的值
此菜单将帮助我们设置 Exchange CAS 服务器在 Active Directory SCP 中注册的自动发现 URL 地址。
最佳实践是将旧版 Exchange CAS 服务器的“内部自动发现 URL 地址”设置为指向 Exchange 2013 CAS 的自动发现地址。
在我们的示例中,Exchange 2013 CAS 使用的内部和外部自动发现命名空间为: autodiscover.o365info.com
在下面的屏幕截图中,我们可以看到我们使用 PowerShell 命令的参数示例。
- 第一个参数是我们要设置其自动发现名称的 Exchange CAS 服务器:EX02
- 第二个参数是自动发现地址。在我们的示例中:autodiscover.o365info.com
D 部分:管理 Outlook Anywhere 设置
在 Exchange 2013 共存环境中,我们需要配置 Outlook Anywhere Exchange 基础结构。该配置将与 Exchange CAS 2013 以及所有旧版 Exchange CAS 服务器相关:Exchange 2007 和 Exchange CAS 2010。
- 实施 Outlook Anywhere 设置的需要将涉及到使用 Exchange CAS 2013 与 Outlook 客户端的通信。
- 应用位于旧版 Exchange CAS 服务器上的 Outlook Anywhere 的需求将与“CAS 到 CAS”通信部分相关,其中 Exchange CAS 2013 创建与旧版 Exchange CAS 服务器的通信通道,用于代理旧版 Outlook 客户端请求。
菜单 5:查看 Outlook Anywhere 设置
在此部分中,我们可以查看所有 Exchange CAS 服务器的现有 Outlook Anywhere 设置(选项 A)或选择查看特定 Exchange CAS 服务器的 Outlook Anywhere(选项 B)。
在下面的屏幕截图中,我们可以看到结果。我们可以看到所有 Exchange CAS 服务器的 Outlook Anywhere 配置设置。
在我们的示例中,我们可以看到名为:STS 的 Exchange CAS 服务器和名为:EX02 的 Exchange CAS 服务器的 Outlook Anywhere 设置
Outlook Anywhere - Exchange 2007/2010 CAS 服务器基础结构
本节涉及“旧版 Exchange CAS 服务器”中 Outlook Anywhere 基础结构的管理。我们之所以将 Exchange 2007/2010 与 Exchange CAS 2013 基础结构分开,是因为 Outlook Anywhere 设置和体系结构在 Exchange CAS 2013 中的实现方式不同。
Exchange 2007/2010 CAS 服务器中 Outlook Anywhere 的配置可被视为一个两阶段过程。
- 在第 1 阶段,我们在 Exchange CAS 服务器上启用 Outlook Anywhere 选项。
- 在第 2 阶段,我们在 Exchange CAS 服务器上配置 Outlook Anywhere 所需的特定设置。
菜单 6:在 Exchange 2007/2010 CAS 服务器上启用 Outlook Anywhere
如果 Exchange CAS 服务器 2007/2010 不支持 Outlook Anywhere (RPC\HTTP),我们将需要启用 Outlook Anywhere 服务并配置所需的配置设置。
我们需要使用的配置设置是:
- ExternalHostname
外部 + 内部 Outlook Anywhere Outlook 客户端将引用此 RPC 端点主机名。
我们需要提供的主机名将是“主命名空间”主机名,该主机名也“附加”到 Exchange CAS 2013。例如:mail.o365info.com- Exchange client authentication method (protocol)
- 默认身份验证方法的值将设置为:基本。
注意 - 该值将由 PowerShell 命令自动配置。- SSL off-loading
-SSL 卸载的值将设置为:False
在下面的屏幕截图中,我们可以看到我们使用 PowerShell 命令的参数的示例。
- 第一个参数是我们要求寻址的 Exchange CAS 服务器。在我们的示例中,我们将在名为 EX02 的 Exchange CAS 服务器上启用 Outlook Anywhere 设置
- 第二个参数是我们要分配给 Exchange CAS 服务器的主机名(RPC 端点名称)。在我们的示例中,我们将使用主机名:mail.o365info.com
在下面的屏幕截图中,我们可以看到“启用 Outlook Anywhere 设置”命令的结果。
我们可以看到不同的参数,例如:外部主机名(RPC 端点名称)和各种身份验证方法。
菜单 7:在 Exchange 2007/2010 CAS 服务器上设置 Outlook Anywhere 身份验证设置
此菜单用于旧版 Exchange CAS 服务器基础结构已包含对 Outlook Anywhere (RPC\HTTP) 的支持的情况。
在这种情况下,我们不需要启用 Outlook Anywhere 服务,而是使用 Exchange 2013 共存环境中所需的配置设置来配置现有 Outlook Anywhere 服务。
- ExternalHostname
这是外部 + 内部 Outlook Anywhere Outlook 客户端将引用的“RPC 端点主机名”。
我们需要提供的主机名将是“主命名空间”主机名,它也“附加”到Exchange CAS 2013。例如:mail.o365info.com- Exchange client authentication method (protocol)
- 默认身份验证方法的值将设置为:基本。
注意 - 该值将由 PowerShell 命令自动配置。- IIS Authentication Method
- IIS 身份验证方法的值将设置为:NTLM + Basic。
注意 - 该值将由 PowerShell 命令自动配置。- A requirement for SSL
- SSL 要求的值将设置为:True
注意 - 该值将由 PowerShell 命令自动配置。- SSL off-loading
-SSL 卸载的值将设置为:False
Outlook Anywhere - Exchange 2013 CAS 服务器基础架构
我们对 Exchange CAS 2013 服务器上的 Outlook Anywhere 配置设置使用专用部分,因为 Exchange CAS 2013 包含以前版本的 Exchange CAS 服务器中不包含的其他设置。
例如 - Exchange CAS 2013 可以配置为对内部和外部 Outlook Anywhere 客户端使用不同的服务器名称。
菜单 8:在 Exchange 2013 CAS 服务器上设置(配置)Outlook Anywhere 设置
此 PowerShell 命令将配置的参数是:
- ExternalHostname
外部 Outlook Anywhere Outlook 客户端将引用的 RPC 端点主机名。注意 - PowerShell 命令将根据用户输入的值设置 RPC 端点主机名。
该值将用于ExternalHostname 和内部主机名- InternalHostname
内部 Outlook Anywhere Outlook 客户端将引用的 RPC 端点主机名。注意 - PowerShell 命令将根据用户输入的值设置 RPC 端点主机名。
该值将用于ExternalHostname 和内部主机名- Exchange client authentication method (protocol)
- 默认身份验证方法的值将设置为:基本。
注意 - 该值将由 PowerShell 命令自动配置。- IIS Authentication Method
- IIS 身份验证方法的值将设置为:NTLM + Basic。
注意 - 该值将由 PowerShell 命令自动配置。- A requirement for SSL
- SSL 要求的值将设置为: TrueNote - 该值将由 PowerShell 命令自动配置。
- SSL off-loading
-SSL 卸载的值将设置为:False
以下命令用于按以下方式设置 Exchange CAS 2013 的身份验证设置:
- Exchange 客户端身份验证方法(协议) - 将自动设置为:基本
- IIS 身份验证方法(CAS 到 CAS) - 将自动设置为:NTLM 和 Basic
- SSL 卸载 - 该值将自动设置为:False
- SSL 的要求 - 该值将自动设置为:True













