web-dev-qa-db-fra.com

PAM: échec d'authentification, avec mot de passe valide

Commande

pamtester -v auth pknopf authenticate
pamtester: invoking pam_start(auth, pknopf, ...)
pamtester: performing operation - authenticate
Password:
pamtester: Authentication failure

journctl

Feb 06 13:22:17 PAULS-Arch unix_chkpwd[31998]: check pass; user unknown
Feb 06 13:22:17 PAULS-Arch unix_chkpwd[31998]: password check failed for user (pknopf)
Feb 06 13:22:17 PAULS-Arch pamtester[31997]: pam_unix(auth:auth): authentication failure; logname= uid=1000 euid=1000 tty= ruser= rhost=  user=pknopf

En l'état actuel, chaque écran de verrouillage m'empêchera de "déverrouiller" (écran de verrouillage KDE, i3lock, etc).

Si je commence i3lock comme Sudo, je peux alors taper correctement le mot de passe root pour déverrouiller l'écran. Cependant, si je l'exécute en tant qu'utilisateur normal et que je ne peux pas utiliser un utilisateur normal ou un mot de passe root pour le déverrouiller.

Voici ma configuration PAM pour i3lock.

#
# PAM configuration file for the i3lock screen locker. By default, it includes
# the 'system-auth' configuration file (see /etc/pam.d/login)
#
auth include system-auth

Fonctionnement ls -l /etc/passwd /etc/shadow /etc/group montre

-rw-r--r-- 1 root root 803 Feb 6 14:16 /etc/group
-rw-r--r-- 1 root root 1005 Feb 6 14:16 /etc/passwd
-rw------- 1 root root 713 Feb 6 14:16 /etc/shadow

Il s'agit d'une nouvelle installation d'Arch, donc je ne pense pas que la configuration soit trop bancale. Que dois-je rechercher pour déboguer cela?

Fonctionnement ls -l /sbin/unix_chkpwd montre

-rwxr-xr-x 1 root root 31392 Jun  9  2016 /sbin/unix_chkpwd
9
Paul Knopf

L'installation de votre système semble être interrompue. Pour une raison quelconque, le fichier /sbin/unix_chkpwd a perdu les bits de privilège que je m'attendais à voir.

Corrigez les autorisations en exécutant la commande suivante en tant que root:

chmod u+s /sbin/unix_chkpwd

Et vérifiez que les autorisations sont maintenant les suivantes (voir le bit s dans les autorisations utilisateur):

-rwsr-xr-x 1 root root 31392 Jun  9  2016 /sbin/unix_chkpwd

Sur ma distribution Raspbian, les autorisations sont définies légèrement différemment (et de manière plus restrictive). Si la modification décrite ci-dessus ne fonctionne pas, soigneusement modifiez les autorisations sur ces deux fichiers et voyez si cela aide (le nom du groupe n'a pas trop d'importance tant qu'il est le même dans les deux cas):

-rw-r----- 1 root shadow  1354 Dec  6 13:02 /etc/shadow
-rwxr-sr-x 1 root shadow 30424 Mar 27  2017 /sbin/unix_chkpwd
11
roaima

Sur une machine Debian, dans mon cas, j'ai dû ajouter l'utilisateur exim4 au groupe shadow.

usermod -a -G shadow Debian-exim

PAM: Sur les systèmes Debian, les modules PAM fonctionnent comme le même utilisateur que le programme appelant, ils ne peuvent donc rien faire que vous ne puissiez faire vous-même, et en particulier ne peuvent accéder à/etc/shadow que si l'utilisateur est dans l'ombre de groupe. - Si vous souhaitez utiliser/etc/shadow pour l'AUTH SMTP d'Exim, vous devrez exécuter exim en tant qu'ombre de groupe. Seul exim4-daemon-heavy est lié à libpam. Nous suggérons d'utiliser saslauthd à la place.

http://lira.no-ip.org:8080/doc/exim4-base/README.Debian.html

4
Daniel Sokolowski