As the root user, I can change the password:
hussie:/home/claudiu# passwd
Enter new password:
Retype new password:
passwd: password updated successfully
As a non-root user I cannot:
claudiu@hussie:~$ passwd
Current Kerberos password:
passwd: User not known to the underlying authentication module
passwd: password unchanged
I also can't change another user's password from root:
hussie:/home/claudiu# passwd claudiu
Current Kerberos password:
passwd: User not known to the underlying authentication module
passwd: password unchanged
Googling the issue suggests using pwconv
and pwunconv
, but I don't have those and don't know where to find them:
claudiu@hussie:~$ pwconv
-bash: pwconv: command not found
claudiu@hussie:~$ pwunconv
-bash: pwunconv: command not found
claudiu@hussie:~$ sudo apt-get install pwconv
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package pwconv
claudiu@hussie:~$ sudo apt-get install pwunconv
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package pwunconv
What do I do?
Run "pam-auth-update"
It'll prompt.
Debian has been really annoying and added kerberos by default during apt-get upgrade(s).
You have another authentication method (kerberos) in use than a standard linux account - chances are the pam module is unable to write/update passwords. Doing so from root confuses the module because root is truly a local account and not in the other service's user list.
Look for some hints to what pam modules are in use look in
/etc/pam.conf
and in the dir:/etc/pam.d
-/etc/nsswitch.conf
may also provide hints, but debian usescompat
which doesn't really help in specifying what is in use obviously.If kerberos is indeed in use, you can't update the password using
passwd