Как настроить сервер OpenLDAP и тест с помощью Apache HTTPD

Я использую CentOS 6. Я нашел большую статью о том, как установить и настроить OpenLDAP на CentOS 6, и я нашел некоторую другую замечательную документацию здесь относительно того, как настроить LDAP для работы над Apache HTTPD (я использую 2.2, который идет с CentOS 6). К сожалению, то, что не обязательно указывают обе статьи, - то, как соединить два вместе. Вторая статья, которую я упомянул, является большой для обхода Apache посредством предположения, что у Вас уже есть хорошее понимание синтаксиса LDAP, и первая статья, которую я упомянул, является большим предположением, что Вы уже имеете в виду способ протестировать его. Кажется, что необходимо быть экспертом в одном, или другой для любого обхода до настраивал Вас полностью.

Поэтому давайте предположим, что я настроил свои учетные данные LDAP в соответствии со статьей CentOS OpenLDAP пошаговой демонстрации. Я добавил следующих людей:

acme.ldif

dn: dc=acme,dc=com
objectClass: dcObject
objectClass: organization
dc: acme
o : acme

users.ldif

dn: ou=Users,dc=acme,dc=com
objectClass: organizationalUnit
ou: Users

bob.ldif

dn: cn=Bob Jones,ou=Users,dc=acme,dc=com
cn: Bob Jones
sn: Jones
objectClass: inetOrgPerson
userPassword: p@ssw0rd
uid: bjones

engineering.ldif

dn: cn=Engineering,ou=Users,dc=acme,dc=com
cn: Engineering
objectClass: groupOfNames
member: cn=Bob Jones,ou=Users,dc=acme,dc=com

addUserToGroup.ldif

dn: cn=Engineering,ou=Users,dc=acme,dc=com
changetype: modify
add: member
member: cn=Al Smith,ou=Users,dc=acme,dc=com

al.ldif

dn: cn=Al Smith,ou=Users,dc=acme,dc=com
cn: Al Smith
sn: Smith
objectClass: inetOrgPerson
userPassword: 12345
uid: asmith

Я загрузил Инструмент LDAPExplorer 2 с SourceForge и успешно соединился с этим каталогом LDAP и исследовал его, и это смотрит точно так же, как файлы LDIF предлагают.

Следующим является из моего httpd.conf файла для Apache HTTPD:

<Directory /var/www/html/authpage>
    AuthType Basic
    AuthName "Enter valid user name"
    AuthLDAPURL ldap://magneto.acme.com:389/????
    require valid-user
</Directory>

Где ???? то, где я не знаю, как составить мою строку синтаксиса LDAP с моим каталогом LDAP. Я попробовал все виды. То, что происходит, я перешел к URL http://magneto.acme.com/authpage (магнето является моим именем хоста для сервера в этом случае, я, по крайней мере, знаю, что работы), и мне предлагают учетные данные. Ничто я вставил работы. Я попробовал комбинации ou= и o= и dc=, наряду с ?uid как параметр запроса.

Когда я проверяю свой Apache error_log, Я вижу эту строку:

[Wed Sep 10 11:00:51 2014] [error] [client 10.78.182.243] access to /authpage failed, reason: verification of user id 'bjones' not configured
[Wed Sep 10 11:00:54 2014] [error] [client 10.78.182.243] access to /authpage failed, reason: verification of user id 'asmith' not configured

Принятие моих работ каталога LDAP и того Apache правильно пытается пройти проверку подлинности к нему, 1. Как я пишу правильный синтаксис для аутентификации всем пользователям или просто определенной группе? 2. Есть ли любая дополнительная конфигурация, требуемая настраивать проверку пользователей, на основе какой error_log сказанный?

1
задан 10 September 2014 в 19:28
2 ответа

После еще большего поиска я нашел эту статью , которая дала чуть больше информации. Оказалось, что я просто пропустил несколько важных строк из моего HTTPD Apache httpd.conf файла:

<Directory /var/www/html/authpage>
    Order deny,allow
    Deny from All
    AuthName "Enter valid user name"
    AuthType Basic
    AuthBasicProvider ldap
    AuthzLDAPAuthoritative off
    AuthLDAPUrl ldap://magneto.acme.com/ou=Users,dc=acme,dc=com?uid
    Require valid-user
    Satisfy any
</Directory>

Надеюсь, если в будущем кто-нибудь будет на CentOS 6, используя OpenLDAP и настраивая LDAP-аутентификацию через HTTPD Apache, ссылки в этом посте ServerFault помогут пролить свет. Это потребовало довольно много проб, ошибок и поиска.

.
0
ответ дан 4 December 2019 в 08:32
ldap://host:port/basedn?attribute?scope?filter

В вашем случае:

AuthLDAPURL ldap://magneto.acme.com:389/ou=Users,dc=acme,dc=com?uid?sub?(objectClass=inetOrgPerson)

Примечание: если вы не разрешаете анонимный поиск на вашем LDAP сервере, вам может понадобиться настроить AuthLDAPBindDN и AuthLDAPBindPassword

0
ответ дан 4 December 2019 в 08:32

Теги

Похожие вопросы