Я открыл офис, и мне НУЖНЫ централизованный вход и домашние каталоги для работы. Поскольку все рабочие станции будут работать с Arch и возникнут проблемы с разными версиями LDAP, я в конце концов пришел к выводу, что серверу LDAP также нужен Arch.
Я выполнил полностью чистую установку Arch на сервере и на рабочей станции. У обоих есть группы пакетов Arch "base" и "base-devel", установлены NTP, OpenSSH и OpenLDAP, на сервере также есть nss-pam-ldapd. Вот и все прямо сейчас.
Проблема: пользователи не могут изменить пароль с помощью passwd. LPAD возвращает:
password change failed: Insufficient access
/etc/slapd.conf (на сервере):
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
pidfile /run/openldap/slapd.pid
argsfile /run/openldap/slapd.args
access to attrs=userPassword
by self write
by anonymous auth
by * none
access to *
by self write
by * read
database bdb
suffix "dc=testing,dc=com"
rootdn "cn=Manager,dc=testing,dc=com"
rootpw {SSHA}ntsD5qrvHJtMflarQPhJzapiEEnqH2/L
directory /var/lib/openldap/openldap-data
index objectClass eq
index uid pres,eq
index mail pres,sub,eq
index cn pres,sub,eq
index sn pres,sub,eq
index dc eq
/etc/openldap/ldap.conf (на клиенте):
BASE dc=testing,dc=com
URI ldap://192.168.1.50
/etc/nslcd.conf (на клиенте):
uid nslcd
gid nslcd
uri ldap://192.168.1.50/
base dc=testing,dc=com
/etc/pam.d/system-auth (на клиенте):
auth sufficient pam_ldap.so
auth required pam_unix.so try_first_pass nullok
auth optional pam_permit.so
auth required pam_env.so
account sufficient pam_ldap.so
account required pam_unix.so
account optional pam_permit.so
account required pam_time.so
password sufficient pam_ldap.so
password required pam_unix.so try_first_pass nullok sha512 shadow
password optional pam_permit.so
session required pam_limits.so
session required pam_unix.so
session optional pam_ldap.so
session optional pam_permit.so
/etc/pam.d/passwd (на клиенте):
password sufficient pam_ldap.so
password required pam_unix.so sha512 shadow nullok
Итак, наконец, мои вопросы:
на клиенте вы должны раскомментировать /etc/nslcd.conf как это :
rootpwmoddn cn = admin, dc = example, dc = com
и измените cn и dc как rootdn в slapd.conf на сервере