Вы писали Wed, 24 Sep в 16:45:10 > > 1) при переносе пользователей в LDAP в атрибуте userPassword хранится > > unix-пароль, а не LDAP-пароль - иначе авторизовать пользователя логин не > > может. В чем тогда глубинный смысл разрешения "by anonymous auth", если > > авторизоваться against этих паролей все равно не получится? > > Значение в userPassword имеет вид {метод}hash. Оно может использоваться и > для байдинга запроса к LDAP (чего разрешается в "by anonymous auth"), и > сторонними средствами (что делает например pam_ldap).
Понял. Хотя все равно - забиндиться к LDAP под именем юзера не получается. Т.е. генерим ldif для пользователя, login проходит нормально, а вот $ ldapsearch -x -W -b "uid=user,..." "(uid=user)" userPassword не может забиндиться. Хотя под "cn=admin, ..." можно (пароль для этого dn был создан автоматом при установке slapd) > > 2) соответственно, кто-то должен иметь возможность читать пароли, что не > > весело. Я в общем завел пользователя, которому больше ничего и нельзя, и > > через него читаю пароли и авторизуюсь, но все рано как-то невесело. > > Может, есть другие варианты? > > Хэшируй пароли в MD% и показывай хэши кому угодно. Пусть попробуют > декодировать :) Скажем так... libnss-ldap при установке говорит, что для возможности сверки паролей надо в /etc/libnss-ldap.conf положить в открытом виде пароль и юзернейм, от имено которого libnss-ldap будет биндиться к ldap для того, чтоб проверить пароь пользователя, который пытается логиниться. Соответственно, этот самый passworder должен иметь доступ к userPassword на чтение, а сам пароль passworder'a должен лежать в открытом виде в этом файле. > > 3) apt-get install libnss-ldap и исправление nsswitch.conf на предмет > > passwd: files ldap дает возможность авторизации юзерам и из LDAP, и из > > /etc/passwd - но с одной странностью. > > LDAP-юзер имеет промпт в баше "I have no [EMAIL PROTECTED]:~$" - что > > странно. > > Куда он теряет имя? > > Похоже, что nscd не стоит, а прямого доступ к LDAP для пользователя > обламывается (либо нет доступа на чтение в /etc/libnss-ldap.conf, либо > облам авторизации на LDAP, либо ещё что-то).. nscd не стоит, доступа на чтение к /etc/libnss-ldap.conf нет по причинам, указанным выше. А при чем тут авторизация на LDAP? забиндиться как user все равно нельзя - т.к. в userPassword у dn: uid=user, dc=mumidol записан UNIX-пароль? > Кстати, я столкнулся с тем, что для некоторых использований (вроде finger) > nscd не помогает - пользователь всё равно должен иметь права > самостоятельно получить информацию из LDAP. Опять же - как он тогда забиндится? > > pam-ldap не использую и все еще не понял, зачем он нужен - кроме как > > алтернативный вариант, без исправления nsswitch, но с исправлением > > pam.d/login на предмет достаточности pam_ldap-аутентификации. > > Насколько я понимаю, nsswitch не занимается аутентификацией вовсе. Т.е. не > даёт доступа до пароля. Ну тем не менее именно так я добился нормального входа в систему пользователей, которые есть только в LDAP и нет в passwd