【问题标题】:nginx AD authentication failurenginx AD 认证失败
【发布时间】:2018-03-22 20:27:43
【问题描述】:

尝试将 Nginx 配置为使用 AD 进行身份验证并收到以下错误。

2018/03/22 17:07:51 [error] 6981#0: http_auth_ldap: Could not connect

尝试了不同的方法来编写 ldap url,但它们似乎都不起作用。配置(nginx.conf)文件中的当前认证模块如下所示:

ldap_server auth_server{
    url ldap://corp.xxxxxx.co.xx:389/dc=corp,dc=xxxxxx,dc=co,dc=xx?uid?sub?(&(objectClass=person));
    binddn "CORP\\desktop_user_xxxxx";
    binddn_passwd "Pxxxxxxxx";
    group_attribute uniquemember;
    group_attribute_is_dn on;
    require valid_user;
}

我也尝试了以下方法:

ldap_server auth_server{
    url ldap://corp.xxxxxx.co.xx:389/dc=corp,dc=xxxxxx,dc=co,dc=xx?sAMAccountName?sub?(objectClass=person);
    binddn "CORP\\desktop_user_xxxxx";
    binddn_passwd "Pxxxxxxxx";
    group_attribute uniquemember;
    group_attribute_is_dn on;
    require valid_user;
}

但是,使用相同凭据的 ldapsearch 可以正常工作,这表明凭据正确且服务器可访问。

ldapsearch  -b "dc=corp,dc=xxxxxx,dc=co,dc=xx" -D "CORP\\desktop_user_xxxxx" -H "ldap://corp.xxxxxx.co.xx" -w Pxxxxxxxx  "(&(objectClass=Person)(sAMAccountName=xxxx))"

如何将此 ldapsearch 字符串转换为 nginx.conf 中 ldap_server 中的 URL?

【问题讨论】:

    标签: nginx active-directory ldap


    【解决方案1】:

    nginx 配置中的binddn 需要是一个实际的专有名称。

    CORP\\desktop_user_xxxxx 并不是真正的专有名称。就是DOMAIN\sAMAccountName

    由于您使用的ldapsearch 客户端允许它绑定到AD,您可以使用它来检索用户真正的dn

    ldapsearch  -b "dc=corp,dc=xxxxxx,dc=co,dc=xx" \
     -D "CORP\\desktop_user_xxxxx" \
     -H "ldap://corp.xxxxxx.co.xx" \
     -w Pxxxxxxxx  \
     "(&(objectClass=Person)(sAMAccountName=desktop_user_xxxxx))"
    

    以上内容应产生您正在寻找的用户条目,并且第一行应以dn: 开头。它看起来像这样......

    dn: CN=Desktop User xxxxx,ou=Users,dc=corp,dc=xxxxxx,dc=co,dc=xx
    

    在你的 nginx 配置中使用dn: 之后的整个字符串作为binddn 属性。

    【讨论】:

    • 恐怕这不适合我。我仍然怀疑 URL 是否有问题。网址 ldap://corp.xxxx.co.xx/DC=corp,DC=xxxxx,DC=co,DC=xx?sAMAccountName?sub?(objectClass=person);
    • 找到了解决方案。错误出现在 URL 本身中。端口号 3268 而不是 389。虽然我不确定为什么会这样。
    猜你喜欢
    • 2021-03-07
    • 2019-09-03
    • 2016-05-30
    • 2014-07-19
    • 2015-10-17
    • 2021-05-11
    • 2012-07-22
    • 2014-10-12
    • 1970-01-01
    相关资源
    最近更新 更多