希望我能在这里得到一些帮助,因为我真的一直在用头敲打这里的旧键盘。
情况是这样的。
我们最近将最终用户从现场 Exchange 服务器迁移到 Exchange Online,客户选择使用 Barracuda Cloud Archiving 作为归档解决方案。这就是所有麻烦的开始。Barracuda 告诉我们,当我们开始该项目时,我们将能够针对所有三个 DC 进行身份验证,因为我们假设所有三个 DC 都位于同一个林中。
好吧,Barracuda 无法针对 DC 进行身份验证,因为它们处于信任关系中,而不是林中。Barracuda 使用 Outlook 插件,该插件要求其服务器针对我们的 ldap 服务器进行身份验证,以允许访问最终用户的存档邮箱。
现在,Barracuda 只能接受一个 LDAP 连接来进行身份验证,因此我们的 2/3 的用户无法进行身份验证。
我的想法是,作为一种解决方法(除了正确地重建域,这在计划中,但不是最高优先级,或者我们是否有时间和资源将所有用户数据迁移到主 DC),构建一个 Linux 服务器并使用 OpenLDAP 和 SASL 身份验证通过身份验证。到相关的 DC。
现在我已经花了至少 4 天时间试图解决这个问题,但我无法让它工作。我可以使用以下命令和结果成功运行 testsaslauthd。
testsaslauthd -u [email protected] -p password
0: OK "Success."
但是当我运行 LDAP 搜索命令时,结果如下:
ldapsearch -x -H ldap://maindc.domain.com -b dc=domain,dc=com -d uid=test,ou=people,dc=my-domain,dc=com -w password
ldap_bind: Invalid credentials (49)
additional info: 80090308: LdapErr: DSID-0C09042F, comment: AcceptSecurityContext error, data 52e, v2580
所以,我希望也许有人能帮我纠正这个错误,或者提供更好的方法来完成我尝试做的事情。我只是一个初级系统管理员,所以请向东走。
谢谢您的帮助!
答案1
我会将此作为答案发布,这样我就能获得超过 400 个字符。
我想你可能误解了我的评论。在你的问题中,你说你曾经使用以下命令:
ldapsearch -x -H ldap://maindc.domain.com -b dc=domain,dc=com -d uid=test,ou=people,dc=my-domain,dc=com -w password
正如我之前所说,我不太熟悉 ldapsearch 命令。但是,您的错误消息是:Invalid credentials (49)
如果我查看此处的 ldapsearch 手册页,https://linux.die.net/man/1/ldapsearch
我会看到这-d
是设置调试级别。但我不确定uid=test,ou=people,dc=my-domain,dc=com
对应的是什么。
此处的问题在于您未指定用于登录 Active Directory 的用户名。因此,我认为您可能混淆-d
了-D
。
您是否应该用 来-d uid=test,ou=people,dc=my-domain,dc=com
替换?-D "[email protected]"
即使我对命令的一部分解释有误,至少在连接到 Active Directory 时,您确实需要指定用户名和密码。因此,您需要以某种方式在命令中使用-D
和。-W