如何使用我选择的邮件客户端(最好是 pine/alpine)访问 Exchange 服务器的全局地址列表?
过去,如果我知道 LDAP 服务器及其与地址簿相关的设置,我就可以在 pine/alpine 中使用它。
我目前已设置为通过 Outlook 访问电子邮件和全局地址列表。我还知道 IMAP 和 SMTP 服务器是什么。我假设全局地址列表也驻留在同一个服务器上,但我不确定。
编辑:明确地说,我的问题分为两部分:
我需要什么详细信息?(例如,全局地址列表是如何实现的?例如,我可以使用普通 LDAP 客户端访问我们吗)?
有没有一种方法,只需查看我配置的 Outlook 即可获得我需要的所有详细信息(服务器、LDAP 字符串或其他任何内容),而无需询问这些?
答案1
任何最新版本的 Exchange 的地址列表都是 Active Directory 域控制器的一部分。因此,只需将您的 LDAP 客户端指向您的一个 DC 即可。
您在地址簿中看到的“全局地址列表”和其他地址列表只是选择特定用户集的 LDAP 过滤器。
此过滤器定义“所有用户”列表。
((Alias -ne $null) -and (((((ObjectCategory -like 'person') -and (ObjectClass -eq 'user') -and (-not(Database -ne $null)) -and (-not(ServerLegacyDN -ne $null)))) -or (((ObjectCategory -like 'person') -and (ObjectClass -eq 'user') -and (((Database -ne $null) -or (ServerLegacyDN -ne $null))))))))
有没有一种方法,只需查看我配置的 Outlook 即可获得我需要的所有详细信息(服务器、LDAP 字符串或其他任何内容),而无需询问这些?
如果您在网络内部,则通常可以通过 DNS 查找找到域控制器列表。对于名为 exmaple.org 的域名,您可能会得到所需的信息,如下所示。
$ dig -t srv _ldap._tcp.example.org
;; QUESTION SECTION:
;_ldap._tcp.example.org. IN SRV
;; ANSWER SECTION:
_ldap._tcp.example.org. 600 IN SRV 0 100 389 ds-02.example.org.
_ldap._tcp.example.org. 600 IN SRV 0 100 389 ds-03.example.org.
_ldap._tcp.example.org. 600 IN SRV 0 100 389 ds-01.example.org.
;; ADDITIONAL SECTION:
ds-01.example.org. 3600 IN A 10.1.1.51
ds-02.example.org. 3600 IN A 10.2.1.52
ds-03.example.org. 3600 IN A 10.1.1.50
获取目录身份验证所需的其他详细信息会有些棘手。您的 basedn 可能类似于dc=example,dc=org
。您应该能够使用用户主体名称来向 AD 进行身份验证。您的 UPN 通常与您的主电子邮件地址相同,它是sAMAccountName@Domain suffix
。