配置 MS-AD Kerberos+LDAP 后以 root 身份更改本地密码

Dan*_*pez 7 linux ubuntu ldap kerberos passwd

我已经按照这篇优秀的帖子来配置 Kerberos + LDAP:http :
//koo.fi/blog/2013/01/06/ubuntu-12-04-active-directory-authentication/

但是,有一些本地用户用于服务。
当我尝试以 root 身份更改其中之一的密码时,它会询问Current Kerberos password然后退出:

passwd service1
Current Kerberos password:  (I hit enter)
Current Kerberos password:  (I hit enter)
passwd: Authentication token manipulation error
passwd: password unchanged
Run Code Online (Sandbox Code Playgroud)

如果我切换到本地用户并执行passwd,它会询问一次 Kerberos,然后回退到本地:
$ passwd
Current Kerberos password:
Changing password for service1.
(current) UNIX password:

我的配置类似于我上面发布的站点,一切正常,我只是无法以 root 身份更改本地用户的密码。

在此先感谢您的帮助。

3.8.0-29-generic #42~precise1-Ubuntu

更新 1 2013-01-31:

# cat /etc/pam.d/common-auth
auth    [success=3 default=ignore]      pam_krb5.so minimum_uid=1000
auth    [success=2 default=ignore]      pam_unix.so nullok_secure try_first_pass
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


# cat /etc/pam.d/common-password
password        [success=3 default=ignore]      pam_krb5.so minimum_uid=1000
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
Run Code Online (Sandbox Code Playgroud)

小智 16

在您的 /etc/pam.d/common-password 中,将第一行中的 minimum_uid 更改为大于 1000 的值,例如:

password        [success=3 default=ignore]      pam_krb5.so minimum_uid=10000
Run Code Online (Sandbox Code Playgroud)

那对我有用。以 root 身份更改该用户的密码后,您应该在 /var/log/auth.log 中看到以下内容:

Dec 26 12:34:36 3.8.0-29-generic passwd[22667]: pam_unix(passwd:chauthtok): password changed for service1
Run Code Online (Sandbox Code Playgroud)