如何配置 ubuntu ldap 客户端从服务器获取密码策略?

如何配置 ubuntu ldap 客户端从服务器获取密码策略?

我在 CentOS 389-ds 上有一个 ldap 服务器。我配置了客户端 ubuntu 12.04 以在此基础上进行身份验证,并且运行良好。但它没有从服务器获取密码策略。例如,如果我将策略设置为强制用户在首次登录时更改密码,ubuntu 会忽略它并始终让用户登录。

我如何设置客户端来获取策略?

以下是客户端文件:

/etc/nsswitch.conf

passwd: files ldap 
group: files ldap
shadow: files ldap
hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4
networks:       files
protocols:      db files
services:       db files
ethers:         db files
rpc:            db files
netgroup: nis
sudoers: ldap files

通用认证

auth    [success=2 default=ignore]  pam_unix.so nullok_secure
auth    [success=1 default=ignore]  pam_ldap.so use_first_pass
auth    requisite           pam_deny.so
auth    required            pam_permit.so
auth    optional            pam_cap.so

普通账户

account [success=2 new_authtok_reqd=done default=ignore]    pam_unix.so 
account [success=1 default=ignore]  pam_ldap.so 
account requisite           pam_deny.so
account required

        pam_permit.so

通用密码

password    requisite           pam_cracklib.so retry=3 minlen=8 difok=3
password    [success=2 default=ignore]  pam_unix.so obscure use_authtok try_first_pass sha512
password    [success=1 user_unknown=ignore default=die] pam_ldap.so use_authtok try_first_pass
password    requisite           pam_deny.so
password    required            pam_permit.so
password    optional    pam_gnome_keyring.so

公共会话

session [default=1]         pam_permit.so
session requisite           pam_deny.so
session required            pam_permit.so
session optional            pam_umask.so
session required    pam_unix.so 
session optional            pam_ldap.so 
session optional            pam_ck_connector.so nox11
session optional pam_mkhomedir.so skel=/etc/skel umask=0022

/etc/ldap.conf

base dc=a,dc=b,dc=c
uri ldaps://a.b.c/
ldap_version 3
rootbinddn cn=directory manager
pam_password md5
sudoers_base ou=SUDOers,dc=a,dc=b,dc=c
pam_lookup_policy yes
pam_check_host_attr yes
nss_initgroups_ignoreusers avahi,avahi-autoipd,backup,bin,colord,daemon,games,gnats,hplip,irc,kernoops,libuuid,lightdm,list,lp,mail,man,messagebus,news,proxy,pulse,root,rtkit,saned,speech-dispatcher,sshd,sync,sys,syslog,usbmux,uucp,whoopsie,www-data

/etc/ldap/ldap.conf

BASE    dc=a,dc=b,dc=c
URI ldaps://a.b.c/
ssl on
use_sasl no
tls_checkpeer no
sudoers_base ou=SUDOers,dc=a,dc=b,dc=c
sudoers_debug 2
pam_lookup_policy yes
pam_check_host_attr yes
pam_lookup_policy yes
pam_check_host_attr yes
TLS_CACERT  /etc/ssl/certs/ca-certificates.crt
TLS_REQCERT never

答案1

确保您已安装所有 libldap 相关库 - 例如 libnss-ldap、libpam-ldap、libkrb53。发布后再次尝试实施策略。

答案2

如果您尝试执行的操作需要 setuid 二进制文件,您可能会遇到以下情况:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=658896

http://www.bebt.de/blog/debian/archives/2011/02/20/T13_14_34/index.html

相关内容