PAM: errore di autenticazione, con password valida


10

Comando

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

Allo stato attuale, ogni schermata di blocco mi impedisce di "sbloccare" (schermata di blocco di KDE i3lock, ecc.).

Se inizio i3lockcome sudo, posso quindi digitare correttamente la password di root per sbloccare lo schermo. Tuttavia, se lo eseguo come utente normale e non riesco a utilizzare l'utente normale o la password di root per sbloccare.

Ecco la mia configurazione PAM per 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

Esecuzione di ls -l /etc/passwd /etc/shadow /etc/groupspettacoli

-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

Questa è una nuova installazione di Arch, quindi non credo che la configurazione sia troppo complicata. Cosa dovrei cercare per eseguire il debug di questo?

Esecuzione di ls -l /sbin/unix_chkpwdspettacoli

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

Hai un account utente pknopfnel tuo /etc/passwd, ecc. E può accedere?
roaima,

Il mio account è in / etc / passwd.
Paul Knopf,

Posso "pamtester auth pknopf autenticare" con l'utente root (in esecuzione come), ma non con l'utente pknopf.
Paul Knopf,

Risultato ls -l /sbin/unix_chkpwdaggiunto alla domanda, per favore.
roaima,

Domanda aggiornata per includere l'output.
Paul Knopf,

Risposte:


11

L'installazione del sistema sembra essere rotta. Per qualche ragione, il file /sbin/unix_chkpwdha perso i bit di privilegio che mi sarei aspettato di vedere.

Correggi le autorizzazioni eseguendo il seguente comando come root:

chmod u+s /sbin/unix_chkpwd

E verificare che le autorizzazioni siano ora le seguenti (vedere il sbit nelle autorizzazioni utente):

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

Sulla mia distribuzione Raspbian le autorizzazioni sono impostate in modo leggermente diverso (e più restrittivo). Se la modifica sopra descritta non funziona, modifica attentamente le autorizzazioni per questi due file e verifica se ciò aiuta (il nome del gruppo non ha importanza se è uguale in entrambi i casi):

-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

1
Questo è il mio problema. È stato il risultato di Docker che ha rimosso quel bit di privilegio. github.com/moby/moby/issues/36239
Paul Knopf,

4

Su una macchina Debian, nel mio caso ho dovuto aggiungere l'utente exim4 al shadowgruppo.

usermod -a -G shadow Debian-exim

PAM: Sui sistemi Debian i moduli PAM funzionano come lo stesso utente del programma chiamante, quindi non possono fare nulla che tu non possa fare da solo, e in particolare non possono accedere a / etc / shadow a meno che l'utente non sia nel gruppo shadow. - Se si desidera utilizzare / etc / shadow per AUTH SMTP di Exim, è necessario eseguire exim come ombra di gruppo. Solo exim4-daemon-heavy è collegato a libpam. Suggeriamo invece di usare saslauthd.

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

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.