Итак, я пытаюсь заставить apache 2.4 разговаривать с активным каталогом, запущенным в ящике freebsd с 10.x
apache собран из портов ... с включенным ldap .... 2.4.12
Активный каталог Windows 2012 R2 .... Я проверил, что ldap ssl не требуется для GPO контроллеров домена по умолчанию.
Я подтвердил имя группы, указанное в конфигурации в ADSIEdit, и проверил пользователя, с которым я подключаюсь ....
Вот образцы конфигурации:
vhosts.conf
<VirtualHost 10.1.1.10:80>
ServerAdmin administrator@domainname.com
ServerName hg.domainname.com
ServerAlias www.hg.domainname.com
ScriptAlias /hg /usr/local/www/mercurial/hgweb.cgi
ErrorLog "/var/log/hg-http-error.log"
CustomLog "/var/log/hg-http-access.log" common
<Location /hg>
Options Indexes ExecCGI FollowSymlinks
AddHandler cgi-script .cgi .fcgi
AllowOverride All
Order allow,deny
Allow from all
#Rem'd part of initial no auth testing
#Require all granted
AuthType Basic
AuthName "Please use your Windows Logon"
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
# Active Directory requires an authenticating DN to access records
AuthLDAPBindDN "[activedirectoryid]@domainname.com"
# This is the password for the AuthLDAPBindDN user in Active Directory
AuthLDAPBindPassword "[somepasswordthatworks]"
# The LDAP query URL
AuthLDAPURL "ldap://ldap.domainanme:3268/?userPrincipalName?sub"
AuthUserFile /dev/null
# Require a valid user
AuthLDAPGroupAttribute member
AuthLDAPCompareAsUser On
Require ldap-group CN=mercurial,CN=Users,DC=tangent-animation,DC=com
Когда я пытаюсь войти в систему с пользователем, который является членом группы, я либо попадаю в журналы httpd:
[Thu Jul 09 10:04:25.659371 2015] [authz_core:error] [pid 67495] [client 10.1.1.2:50371] AH01631:
Или и ошибка AH01618
В любом случае, последние пару дней это сводило меня с ума ...
Я попытался добавить дополнительный раздел auth на сайт, указанный в httpd.conf, вместо vhosts, на всякий случай, если у меня что-то не так в файле vhosts. Но он все равно не работает, хотя выдает ошибку сервера 500. Но в журналах нет ничего конкретного, на что можно было бы указать.
Я погуглил, все, что мог придумать, и я пытался смотреть под углом окна и со стороны apache. Вся документация по apache или информация, которую я видел, содержат в основном те же настройки: либо строки конфигурации ldap, указывающие на порт 389, либо порт GC .... и либо с именем samaccountname, либо с принципом пользователя ....
На том же сервере у меня есть samba4.1, прекрасно работающая и подключенная как член домена .... и доступ к файлам / kerberos и т.д. все работает нормально.
Также, если я удалю материал auth ldap и просто полностью открою его, сайт будет работать нормально, так что это определенно что-то в конфигурации auth.
В основном я в тупике ..... Какие очевидные вещи попробовать?
TIA
Получил работу с некоторой помощью ...
Таким образом, большинство пользователей хранятся в другом OU, поэтому, хотя я уверен, что пробовал это, строка поиска (ldap: // должна иметь только dc = domain, а не ограничивать ее cn = Users
AuthName "Dialog-box-name"
AuthType "Basic"
AuthBasicProvider ldap
AuthLDAPURL ldap://[AD-Server-Hostname.FQDN]:3268/dc=[domain],dc=com?sAMAccountName?sub?(objectCategory=*)
AuthLDAPBindDN cn=[ad-search-user-account],cn=Users,dc=[domain],dc=com
AUthLDAPBindPassword [Insert-Working-Password-here]
#AuthLDAPAuthoritative on
#AuthLDAPGroupAttributeIsDN off
Require ldap-group CN=[GroupName-your-using],CN=Users,DC=domain,DC=com