Exchange 服务器:传出 SMTP 服务器名称?

Exchange server: outgoing SMTP server name?

我正在尝试查找负责传递传出 Exchange 邮件的 SMTP 服务器的名称。

我可以通过 MX 记录轻松找到传入的 SMTP 服务器名称,但我需要传出邮件的 SMTP 服务器。自动发现也无济于事 - 它拥有一切和厨房水槽(EWS 端点等),但没有传出 SMTP 服务器名称。

它是否在 Active Directory 中(对于本地 Exchange 服务器)?

谢谢!

您运行正在使用哪个版本的 Exchange?

您可以 运行 来自 Exchange Management Shell 的以下内容,它应该为您提供足够的信息。

Get-SendConnector | Select-Object -Property Identity,Enabled,SmartHosts,AddressSpaces,SourceTransportServers

或从 ECP/EAC、select 邮件流,然后 select 发送连接器。如果您有多个,则必须四处寻找并找到已启用的地址 space '*' 成本最低的那个 - 这很可能是您的默认连接器。 Open/view 发送连接器。 Select 范围,在弹出 window 的下半部分,您将看到一个 "Source server" 框。该框中的服务器负责从 Exchange 组织中获取出站电子邮件。

但是,Exchange 有可能只是发送到智能主机,智能主机会在邮件实际离开您的网络之前扫描、记录或以其他方式处理您的出站邮件。如果在 powershell 输出中或在 EAC 中的 "Delivery" 下是这种情况,那么在 "SmartHosts" 下会有一个条目。

附带说明一下,没有真正的 "outbound smtp" 服务器,就像事实上的 "inbound smtp server" 服务器(即 MX)一样。我认为尽可能接近的是在您的 SPF 记录中指定一个名称、地址或块,但这并不完全相同。

编辑 - 在 Active Directory 中查找信息:

Get-ADObject -Filter 'objectClass -eq "msExchRoutingSMTPConnector" -SearchBase "CN=Configuration,DC=domain,dc=com"

会给你一个发送连接器的列表,routingList属性会告诉你每个连接器的名称space是有效的,成本是多少。不幸的是,我不知道如何从这些对象中获取那些发送连接器中包含的服务器名称。

您也可以通过 ADSIedit 或其他允许您在 AD 中浏览配置的工具找到这些。粗略的路径是:

CN=Connections,CN=ExchangeRouting Group (xxxxxx),CN=RoutingGroups,CN=Exchange Administrative Group (xxxxxx),CN=Administrative Groups,CN=ExchangeOrganization,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=domain,DC=com".

您的里程可能会有所不同。