openldap-server-2.4.16_1
nss_ldap-1.264_2
лдап поднят и запущен telnet 127.0.0.1 389 цепляется. но nss_ldap не находит его
May 29 11:28:18 pcbsd su: nss_ldap: could not search LDAP server - Server is unavailable
это в messagesв дебаге такое:
May 29 11:35:00 pcbsd cron[30253]: NSSWITCH(nss_method_lookup): ldap, group, setgrent, not found
May 29 11:35:00 pcbsd cron[30253]: NSSWITCH(nss_method_lookup): ldap, group, getgrent_r, not found
May 29 11:35:00 pcbsd cron[30253]: NSSWITCH(nss_method_lookup): ldap, group, endgrent, not found
May 29 11:35:00 pcbsd cron[30253]: NSSWITCH(nss_method_lookup): ldap, passwd, endpwent, not foundid ldapuser
в логах такое:
May 29 11:38:34 pcbsd id: NSSWITCH(nss_method_lookup): ldap, passwd, getpwnam_r, not foundгрешу на дистибутив (PCBSD), т.к. аналогичная конфигурация на "чистой" фре работает. по крайней мере система видит лдаповые аккаунты, но систему переставлять нет времени. в чем затык - уже все идеи кончились :( пересобрать лдап и нсс уже советовали - не помогло
в rc.conf
slapd_enable="YES"
slapd_flags='-h "ldapi:///var/run/openldap/ldapi/ ldap://0.0.0.0/ ldaps://0.0.0.0/"'
slapd_sockets="/var/run/openldap/ldapi"в nsswitch.conf
group: files ldap
group_compat: nis
hosts: files dns
networks: files
passwd: files ldap
passwd_compat: nis
shells: filesв pam.d/system
# auth
auth sufficient pam_opie.so no_warn no_fake_prompts
auth requisite pam_opieaccess.so no_warn allow_local
#auth sufficient pam_krb5.so no_warn try_first_pass
#auth sufficient pam_ssh.so no_warn try_first_pass
#auth required pam_unix.so no_warn try_first_pass nullok
auth sufficient pam_unix.so no_warn try_first_pass nullok
auth required /usr/local/lib/pam_ldap.so use_first_pass# account
#account required pam_krb5.so
account required pam_login_access.so
account required pam_unix.so# session
#session optional pam_ssh.so
session required pam_lastlog.so no_fail# password
#password sufficient pam_krb5.so no_warn try_first_pass
password required pam_unix.so no_warn try_first_passв ldap.conf
#host 127.0.0.1
base dc=domain
uri ldapi:///var/run/openldap/ldapi/
rootbinddn cn=admin,dc=domain
binddn uid=admin,dc=domain
bindpw password
scope sub
nss_base_passwd ou=Users,dc=domain?one
nss_base_passwd ou=Computers,dc=domain?one
nss_base_group ou=Groups,dc=domain?one
ssl no
pam_password CRYPTbind_timelimit 10
bind_policy soft
на другой машине (freebsd 7.1), если в лдап.конф указать URI ldap://192.168.2.183 (айпи машины на которой поднят лдап), id прекрасно показывает лдаповый аккаунт... на самой 183й - никак. конфы пам и нссвич совпадают.
идеи кончились :(
>[оверквотинг удален]
>
>bind_timelimit 10
>bind_policy soft
>
>
>на другой машине (freebsd 7.1), если в лдап.конф указать URI
> ldap://192.168.2.183 (айпи машины на которой поднят лдап), id прекрасно
>показывает лдаповый аккаунт... на самой 183й - никак. конфы пам
>и нссвич совпадают.
>идеи кончились :(строчки
nss_base_passwd ou=Users,dc=domain?one
nss_base_passwd ou=Computers,dc=domain?one
nss_base_group ou=Groups,dc=domain?oneдолжны быть в /usr/local/etc/nss_ldap.conf
>строчки
>nss_base_passwd ou=Users,dc=domain?one
>nss_base_passwd ou=Computers,dc=domain?one
>nss_base_group ou=Groups,dc=domain?one
>
>должны быть в /usr/local/etc/nss_ldap.confnss_ldap.conf у меня симлинк к ldap.conf
так делают. в статьях встречается.
проблема решена. все-таки дело было в дистрибутиве и пакетах, которые ставились в 2 места. pcbsd пославил себе лдап-клиента в свое дерево (у него даже база установленных пакетов своя, что страшно мешает и путает). надо было всё снести, включая родные дистровые пакеты, и еще раз пересобрать из портов. машинка лдап теперь видит
всем спасибо