Eu comecei um escritório e EU PRECISO de login centralizado e diretórios home para trabalhar. Como todas as estações de trabalho vão executar o Arch e problemas com diferentes versões do LDAP, finalmente concluí que o servidor LDAP também precisava do Arch.
Eu fiz uma instalação completamente limpa do Arch no servidor e em uma estação de trabalho. Ambos possuem os grupos de pacotes "base" e "base-devel" da Arch, NTP, OpenSSH & OpenLDAP instalado, o servidor também tem o nss-pam-ldapd. Isso é muito bonito agora.
Problema: os usuários não podem alterar a senha usando o passwd. LPAD retorna:
password change failed: Insufficient access
/etc/slapd.conf (no servidor):
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 (no cliente):
BASE dc=testing,dc=com
URI ldap://192.168.1.50
/etc/nslcd.conf (no cliente):
uid nslcd
gid nslcd
uri ldap://192.168.1.50/
base dc=testing,dc=com
/etc/pam.d/system-auth (no cliente):
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 (no cliente):
password sufficient pam_ldap.so
password required pam_unix.so sha512 shadow nullok
Então, finalmente, minhas perguntas: