在 Exchange 本地环境中配置强制 TLS |接收连接器的设置 |第 9 部分#12
在本文中,我们将回顾在基于 Exchange 本地的环境中实施强制 TLS 所需的配置设置。在我们的具体场景中,我们需要为“传入邮件流”配置强制 TLS 选项。
其含义是 - 从外部邮件服务器发送到 Exchange 本地服务器的邮件代表特定域名。
强制 TLS 配置设置将应用于接收连接器。
在入站连接器上强制使用 TLS |场景描述
完整的场景描述出现在上一篇文章中
在本文中,我们将从完整的场景中实现以下部分:
该场景是我们完整场景的第四部分,其中我们需要实现<的配置em>在两个不同的合作伙伴组织上强制使用 TLS。
快速提醒我们的场景:
- 我们与另一个组织(合作伙伴)有业务关系。
- 我们的组织使用 Exchange 本地邮件基础设施。
- 合作伙伴邮件基础结构托管在 Exchange Online 上。
- 合作伙伴公共域是 - o365pilot.com
我们希望确保从我们的业务合作伙伴发送到收件人的每封邮件都将被加密,此外,我们希望能够识别“合作伙伴邮件服务器”,以便我们能够知道该邮件服务器是合法且值得信赖。
Exchange 本地入站连接器的特定字符
对比。我们在之前的文章中回顾过的其他场景,与 Exchange Online 基础结构和本地 Exchange 发送连接器 ,本地 Exchange 接收邮件连接器 的主要缺点是我们无法选择“其他邮件服务器”的具体验证方式。
例如,我们不能使用通过请求服务器证书来识别外部服务器的选项。
我们可以用来识别外部邮件服务器的唯一方法是通过 IP 地址。
在外部邮件服务器使用广泛的 IP 地址的情况下,以及外部 IP 地址动态变化的环境中,我们通过 IP 地址识别“其他邮件服务器”的方法可能会变得复杂。邮件服务器经常可以更新。
当我们的业务合作伙伴在基于 Exchange Online 的环境中托管其邮件基础结构时,这正是我们遇到的场景“问题”。
在这种情况下,我们需要找到一种方法来“了解”代表我们合作伙伴的邮件服务器的 Exchange Online 服务器的特定 IP 地址或 IP 地址范围。
在下图中,我们可以看到业务需求的说明 - 使用 强制 TLS 用于从“外部邮件服务器”发送的传入邮件。
如何识别外部邮件服务器?
为了能够满足外部邮件服务器(在我们的场景中为 Exchange Online)向收件人发送的每封电子邮件都将被加密的要求,我们将创建一个新的 接收邮件连接器。
我们用于识别外部邮件服务器的方法是将“外部邮件服务器”(在我们的场景中为 Exchange Online)的 IP 地址或 IP 范围添加到本地 Exchange 接收邮件连接器
Exchange 本地部署 |创建强制 TLS 所需的配置 |接收连接器
第 1#2 阶段 - 使用 Exchange 管理界面创建接收连接器
以下演示是使用Exchange 2010服务器版本实现的。
打开 Exchange 管理控制台。选择服务器配置、集线器传输。
右键单击空白处并选择 - 新建接收连接器...
在名称文本框中,输入适合您需要的名称。
我的建议是使用描述性名称,以便将来在故障排除过程中,可以轻松理解特定邮件连接器的用途。
在选项框中 - 选择此接收连接器的用途,选择自定义
下一个屏幕显示有关 Exchange 本地用于“列出”传入通信的端口号(默认情况下为端口 25)以及“附加”到 接收连接器。
保留默认配置并转到下一个屏幕。
在下面的屏幕截图中,我们可以看到,默认情况下,接收连接器将应用我们的特定设置到尝试寻址本地 Exchange 的每个外部邮件服务器。
我们需要删除此默认设置,因为在我们的场景中,我们想要“激活”接收连接器仅在特定邮件服务器尝试寻址 Exchange 本地服务器(我们的合作伙伴邮件服务器)的情况下。
单击 X 符号删除默认 IP 范围
我们的场景中的主要挑战是 - 如何获取代表 Exchange Online 基础结构的 IP 地址。
从技术上讲,我们可以使用简单的操作,例如使用 nslookup 命令工具来获取代表我们合作伙伴组织的 Exchange Online 的 MX 记录和主机名。
然而,需要强调的是,这个“解决方案”不是一个完整的解决方案,因为 Exchange Online 环境由许多 IP 地址代表,即使我们“获取”特定的 IP 地址,该 IP 地址可以更改或更新。
让我们从最简单的过程开始,其中我们“携带”代表域名的 Exchange Online 服务器的 IP 地址 - o365pilot.com 以及后面的内容;我们将回顾更高级的步骤,这将帮助我们定义 Exchange Online 基础结构使用的所有 IP 范围。
获取 Exchange Online 服务器的 IP 地址
在我们的场景中,我们业务合作伙伴的公共域名是 - o365pilot.com
第一步,我们将使用 nslookup 工具获取代表 o365pilot.com 的 Exchange Online 服务器的主机名
- 打开命令提示符并输入 - Nslookup
- 类型设置类型=mx
- 在我们的具体场景中,我们想知道域的 MX - o365pilot.com
- 输入域名
在下面的屏幕截图中,我们可以看到代表域名的邮件服务器(Exchange Online)的主机名 - o365pilot.com 是: o365pilot-com.mail.protection.outlook.com
为了能够获取此主机名的 IP 地址,我们将打开一个新的命令提示符并使用主机名 ping - o365pilot-com.mail.protection.outlook.com
在下面的截图中,我们可以看到结果,主机名的IP地址
-o365pilot-com.mail.protection.outlook.com是- 213.199.154.87
在远程网络设置屏幕中,添加 IP 地址 - 213.199.154.87
在下一个屏幕上,我们可以看到配置设置的摘要。
在下一个屏幕上,我们可以看到用于创建所需配置设置的 PowerShell 命令。
在当前阶段,创建了一个新的接收连接器,但是需要强调的是,新的接收连接器Exchange 本地接收连接器,不包含我们需要的所有必需配置在我们的场景中实施。
在我们的场景中,我们需要“激活”默认情况下未激活的强制 TLS 选项。
为了能够显示在上一阶段创建的新接收连接器的设置,我们将使用以下 PowerShell 命令:
Get-ReceiveConnector "EX01\Force TLS - Mail sent from o365pilot.com must be encrypted"在下面的屏幕截图中,我们可以看到接收连接器设置。
AuthMechanism 设置为 TLS
RemoteIPRanges 的值包括在上一阶段设置的 IP 地址(Exchange Online IP 地址)
请注意,-RequireTLS 的值为 False。意思是强制TLS选项没有激活。
我们需要更新本地 Exchange 接收连接器的两项附加设置
- PermissionGroups - 更新permissionGroups的参数以允许匿名访问(通过未经身份验证的邮件服务器访问),该访问将使用值AnonymousUsers进行设置
- RequireTLS - 将 RequireTLS 的值设置为 true
为了能够实现这些设置,我们将使用以下 PowerShell 命令:
Set-ReceiveConnector "EX01\Force TLS - Mail sent from o365pilot.com must be encrypted" -RequireTLS $true -permissionGroups AnonymousUsers在下面的屏幕截图中,我们可以看到该值已更新。
- PermissionGroups - PermissionGroups 的值已更新为 AnonymousUsers
- RequireTLS - RequireTLS 的值设置为 true
RequireTLS 参数指定此连接器接收的所有消息都需要 TLS 传输。此参数的有效值为 $true 或 $false。默认值为 $false。当 RequireTLS 参数设置为 $true 时,此连接器接收的所有消息都需要 TLS 传输。
PermissionGroups 参数指定可以向接收连接器提交消息的组或角色以及分配给这些组的权限。权限组是授予众所周知的安全主体的一组预定义权限。
此参数的有效值如下:None、AnonymousUsers、ExchangeUsers、ExchangeServers、ExchangeLegacyServers Partners 和 Custom。分配给接收连接器的默认权限组取决于创建接收连接器时由Usage 参数指定的连接器使用类型。
获取 Exchange Online 基础结构的 IP 地址范围
如前所述,配置 Exchange Online 服务器使用的特定 IP 地址的任务有点棘手,因为我们没有有关该 IP 地址的明确信息。
好消息是,Exchange Online 使我们能够通过使用远程 PowerShell 会话连接到 Exchange Online 基础设施来获取所需信息,并使用名为 Get-HybridMailflowDatacenterIPs 的特定 PowerShell 命令,这将帮助我们“获取”完整列表Exchange Online IP 范围。
为了能够完成获取所需 IP 范围的任务,我们将使用三步过程。
步骤 1#3 - 创建与 Exchange Online 的远程 PowerShell 会话
在第一步中,我们将使用 Exchange 本地 PowerShell 控制台创建 Exchange Online 所需的远程 PowerShell 会话。
请注意,能够完成远程 PowerShell 会话;您需要提供 Office 365 全局管理员凭据。
如果您需要有关如何创建到 Exchange Online 的远程 PowerShell 的更多信息,请阅读以下文章 - 使用 PowerShell 连接到 Exchange Online
如果您没有 Office 365 帐户,请指导您的合作伙伴如何实施此过程。
步骤 2#3 - 获取 Exchange Online IP 范围列表
当我们使用 PowerShell 命令 Get-HybridMailflowDatacenterIPs 时,信息会以不清晰的方式显示。
为了能够优化 >Get-HybridMailflowDatacenterIPs 命令的 PowerShell 命令输出,我们将使用附加的 PowerShell 参数
$FormatEnumerationLimit =-1
组合看起来像
C:\scripts>$FormatEnumerationLimit =-1
C:\scripts>Get-HybridMailflowDatacenterIPs在下面的屏幕截图中,我们可以看到 PowerShell 命令
Get-HybridMailflowDatacenterIPs 的结果,我们使用该命令“获取”所有可用的 Exchange Online IP 地址范围
为了能够保存有关变量的信息,我们将定义一个名为 - $ip 的变量
运行以下 PowerShell 命令:
C:\scripts>$FormatEnumerationLimit =-1
C:\scripts>$ip = Get-HybridMailflowDatacenterIPs只是出于好奇,如果您想查看 $ip 变量的内容,您只需输入 $ip 类型即可
C:\scripts>$ip步骤 3#3 - 将 Exchange Online IP 范围导入接收连接器
在我们的特定场景中,新的接收连接器名称为“EX01\Force TLS - 从 o365pilot.com 发送的邮件必须加密”
能够将 $ip 变量的内容导入到 接收连接器设置,我们将使用以下PowerShell命令
Get-ReceiveConnector "EX01\Force TLS - Mail sent from o365pilot.com must be encrypted" | Set-ReceiveConnector -RemoteIPRanges $ip.DatacenterIPs在下面的屏幕截图中,我们可以看到结果。
Exchange 本地接收连接器已填充 Exchange Online IP 范围。
回顾和下一篇文章
在本文中,我们回顾了需要为“传入邮件流”实施的强制 TLS 所需的配置设置,即发送到 Exchange 的邮件 -由代表特定域名 (o365pilot.com) 的外部邮件服务器提供。
强制 TLS 设置是使用本地 Exchange 配置的接收连接器
在我们的场景中,每次发送电子邮件时,强制 TLS 设置将被“激活”邮件是从使用域名的收件人发送的 - o365pilot.com
在下一篇文章(使用传输规则实施强制 TLS | Exchange online | 第 10#12 部分)中,我们将回顾如何使用传输规则在 Exchange Online 环境中实施强制 TLS。

















