Use vários métodos de login do PAM de uma só vez?

5

Estou usando o pam-fprintd como um método de login. Atualmente funciona perfeitamente para entrar no screensaver e sudo de canela. Infelizmente você tem que falhar no login da impressão digital um certo número de vezes antes que o login de senha seja permitido.

Eu gostaria que os dois métodos de login estivessem disponíveis ao mesmo tempo, de modo que você pudesse fazer o login com impressão digital ou senha sem ter que falhar um certo número de vezes. Isso é possível?

Meu /etc/pam.d/system-auth é o seguinte:

#%PAM-1.0

auth      sufficient pam_fprintd.so
auth      sufficient  pam_unix.so     try_first_pass nullok
#auth      optional  pam_permit.so
auth      required  pam_env.so

account   required  pam_unix.so
account   optional  pam_permit.so
account   required  pam_time.so

password  required  pam_unix.so     try_first_pass nullok sha512 shadow
password  optional  pam_permit.so

session   required  pam_limits.so
session   required  pam_unix.so
session   optional  pam_permit.so

Aqui está a saída do diário com a opção de depuração:

Jun 18 09:50:34 Archenemy dbus[261]: [system] Activating via systemd: service name='net.reactivated.Fprint' unit='fprintd.service'
Jun 18 09:50:34 Archenemy systemd[1]: Starting Fingerprint Authentication Daemon...
Jun 18 09:50:34 Archenemy dbus[261]: [system] Successfully activated service 'net.reactivated.Fprint'
Jun 18 09:50:34 Archenemy systemd[1]: Started Fingerprint Authentication Daemon.
Jun 18 09:50:34 Archenemy sudo[3356]: pam_fprintd(sudo): Using device /net/reactivated/Fprint/Device/0
Jun 18 09:50:34 Archenemy fprintd[3357]: ** Message: user 'yau' claiming the device: 0
Jun 18 09:50:35 Archenemy fprintd[3357]: ** Message: now monitoring fd 15
Jun 18 09:50:35 Archenemy fprintd[3357]: ** Message: device 0 claim status 0
Jun 18 09:50:35 Archenemy fprintd[3357]: ** Message: start verification device 0 finger 6
Jun 18 09:50:35 Archenemy sudo[3356]: pam_fprintd(sudo): verify_finger_selected Swipe your right thumb across the fingerprint reader
Jun 18 09:50:37 Archenemy fprintd[3357]: ** Message: verify_cb: result verify-match (1)
Jun 18 09:50:37 Archenemy sudo[3356]: pam_fprintd(sudo): Verify result: verify-match
Jun 18 09:50:37 Archenemy fprintd[3357]: ** Message: no longer monitoring fd 15
Jun 18 09:50:37 Archenemy fprintd[3357]: ** Message: released device 0
Jun 18 09:50:37 Archenemy sudo[3356]: yau : TTY=pts/2 ; PWD=/home/yau ; USER=root ; COMMAND=/bin/bash
Jun 18 09:50:37 Archenemy sudo[3356]: pam_unix(sudo:session): session opened for user root by yau(uid=0)
    
por Yet Another User 03.06.2015 / 21:00

3 respostas

1

De /usr/share/doc/fprintd-pam-0.5.0/README

  • pam_fprintd não suporta a inserção da senha ou de uma impressão digital como pam_thinkfinger faz, porque é um hack bruto e pode ser consertado fazendo com que os gerentes de login executem 2 pilhas separadas do PAM
por 06.11.2017 / 18:27
0

Eu escrevi o libfprint-fprintd, agora a impressão digital e a senha podem funcionar juntas: link

Basta compilá-lo como de costume e adicionar auth sufficient pam_fprintd.so a /etc/pam.d/{sudo, ...}

Na versão atual, você pode inserir a senha diretamente após a dica "Coloque o dedo no leitor de impressão digital". Em sudo , pam_fprintd.so falhará automaticamente e passará a senha para o próximo pam depois de pressionar Enter. Além disso, você pode pressionar enter diretamente para pular a impressão digital.

(Apenas ignore meu caminho, é para teste)

    
por 28.03.2018 / 09:26
-1

Defina 'pam_fprint' como 'suficiente' e assegure-se de que 'pam_unix' esteja definido como 'suficiente' ao seguir com 'pam_deny' como 'obrigatório'

A documentação para pam_fprint tem um bom exemplo enquanto o guia de administração de sistemas de spam tem excelentes exemplos de configurações complexas.

    
por 04.06.2015 / 05:13

Tags