Добрый день!
Установил из портов /usr/ports/net/openldap21, /usr/ports/security/pam_ldap
Конфиг /usr/local/etc/openldap/slapd.conf:
include /usr/local/etc/openldap/schema/core.schema
include /usr/local/etc/openldap/schema/cosine.schema
include /usr/local/etc/openldap/schema/inetorgperson.schema
include /usr/local/etc/openldap/schema/nis.schema
include /usr/local/etc/openldap/schema/samba.schema
pidfile /var/run/ldap/slapd.pid
argsfile /var/run/ldap/slapd.args
access to attr=userPassword
by self write
by dn="cn=Admin,dc=domain,dc=ru" write
by * auth
access to attr=lmPassword
by self write
by dn="cn=Admin,dc=domain,dc=ru" write
by * auth
access to attr=ntPassword
by self write
by dn="cn=Admin,dc=domain,dc=ru" write
by * auth
access to *
by dn="cn=Admin,dc=domain,dc=ru" write
by * read
database bdb
suffix "dc=domain,dc=ru"
rootdn "cn=Admin,dc=domain,dc=ru"
rootpw secret
directory /var/db/openldap-data
index objectClass eq
Добавил ldif файл в базу:
dn: dc=domain,dc=ru
objectClass: top
objectClass: dcObject
objectClass: organization
dc: domain
dn: cn=Admin,dc=domain,dc=ru
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
sn: Admin
cn: Admin
dn: ou=users,dc=domain,dc=ru
objectClass: top
objectClass: organizationalUnit
ou: users
dn: uid=test,ou=users,dc=domain,dc=ru
objectClass: top
objectClass: account
objectClass: posixAccount
uid: test
cn: test
uidNumber: 1005
gidNumber: 1005
homeDirectory: /home/test
userPassword: test
loginShell: /bin/tcsh
gecos: Test User
dn: ou=groups,dc=domain,dc=ru
objectClass: top
objectClass: organizationalUnit
ou: groups
dn: cn=test,ou=groups,dc=domain,dc=ru
objectClass: top
objectClass: posixGroup
cn: test
gidNumber: 1005
memberUid: test
Настроил pam_ldap:
Файл /usr/local/etc/ldap.conf
host 127.0.0.1
base dc=domain,dc=ru
ldap_version 3
rootbinddn cn=Admin,dc=domain,dc=ru
port 389
scope sub
pam_filter objectclass=posixAccount
pam_login_attribute uid
pam_member_attribute gid
pam_password clear
Поместил файл с паролем secret в /usr/local/etc/ldap.secret
Добавил в /etc/pam.d/login строку
auth sufficient /usr/local/lib/pam_ldap.so
Теперь пытаюсь залогиниться под юзером test. Если пароль набираю неправильно, то в syslog появляется:
Jul 29 11:46:11 NetServer login: pam_ldap: error trying to bind as user "uid=test,ou=users,dc=domain,dc=ru" (Invalid credentials) и логин не происходит, а если правильно, то:
Jul 29 11:46:54 NetServer login: pam_acct_mgmt(): error in service module
Jul 29 11:50:01 NetServer login: 5 LOGIN FAILURES ON ttyv3
и логина все равно нет. Перерыл весь google, не могу найти, в чем проблема.
Кто знает, где грабли, направте в нужную сторону. Кстати, для чего нужет nss_ldap?