Active-Directory

使用帶有 Active Directory 的 mod_authnz_ldap 的身份驗證失敗

  • November 6, 2019

我在 CentOS 上設置了 Nagios Core 伺服器,我希望人們能夠使用他們的 AD 憑據登錄到 Web 界面。目前,httpd的配置是:

   AuthBasicProvider ldap
   AuthType Basic
   AuthName "Active Directory Login"
   AuthLDAPURL "ldap://[servername].[domainname].inc:3268/dc=[domainname],dc=inc?sAMAccountName?sub" NONE
   AuthLDAPBindDN "[Username]@[domainname].inc"
   AuthLDAPBindPassword "[Password]"
   Require valid-user

但是,嘗試登錄會產生以下消息:

[Thu Oct 24 15:18:13.029425 2019] [auth_basic:error] [pid 311] [client 10.121.XX.XX:52740] AH01617: user [username]: authentication failure for "/nagios/": Password Mismatch

我想我做錯了AuthLDAPURLor AuthLDAPBindPassword,因為我承認我在理解這些文件時遇到了一些麻煩。

非常感謝你。

我想通了!問題在於AuthLDAPBindDN. 我看到[username]@[domain].[TLD]格式建議了幾個地方,但據我所知它不起作用。也許它適用於舊版本的 Apache。相反,使用者名的格式應如下:

CN=[username],OU=[AD folder containing username],[more entries as needed],DC=[domain],DC=[TLD]

本質上,逗號分隔的列表是從您正在使用的使用者對像到頂級域的路徑。所以如果你的目錄結構看起來像這樣……

company.com
 location1
 location2
   users
     alice
     bob
     charlie
   computers
 location3

…並且您想使用 Alice 的使用者帳戶綁定到域,值AuthLDAPBindDN應該是:

AuthLDAPBindDN "CN=alice,OU=users,OU=location2,dc=company,dc=com"

希望這可以幫助像我一樣困惑的人。

再會 !

請檢查 cgi.cfg 配置並驗證是否相同。

use_authentication 設置為 1

引用自:https://serverfault.com/questions/990580