fprint (Português)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Status de tradução: Esse artigo é uma tradução de Fprint. Data da última tradução: 2020-09-18. Você pode ajudar a sincronizar a tradução, se houver alterações na versão em inglês.

Do site oficial do fprint:

O projeto fprint visa preencher uma lacuna na área de trabalho do Linux: suporte para dispositivos de leitura de impressões digitais de consumidores.

A ideia é usar o leitor de impressão digital embutido em alguns notebooks para fazer login usando PAM. Este artigo também explicará como usar a senha normal para o método de login de backup (somente o leitor de impressão digital não é recomendado devido a vários motivos).

Pré-requisitos

Verifique se você possui um dos leitores biométricos compatíveis. Você pode verificar se o seu dispositivo é suportado, verificando lista de dispositivos suportados. Para verificar qual você possui, digite:

$ lsusb
Nota: A lista acima de dispositivos suportados não é atualizada regularmente e não está completa. Vale a pena testar o seu dispositivo usando as instruções nesta página, mesmo que ele não apareça nessa lista, antes de recorrer aos pacotes AUR.

Instalação

Instale o pacote fprintd. imagemagick também pode ser necessário.

Alguns disposições exigem um fork diferente do libfprint feito especificamente para sensores baseados em toques e não (ainda?) mesclado ao libfprint principal: libfprint-tod. Isto está disponível como libfprint-tod-gitAUR

Configuração

Configuração de login

Nota:
  • Se você usa GDM, a opção de impressão digital já estará disponível no menu de login (se não estiver, adicione você mesmo ao grupo input). Você pode pular esta seção!
  • Se você usa SDDM, consulte SDDM#Using a fingerprint reader.

Adicione pam_fprintd.so como sufficient ao topo da seção de auth de /etc/pam.d/system-local-login:

/etc/pam.d/system-local-login
auth      sufficient pam_fprintd.so
auth      include   system-login
...

Ele tenta usar o login de impressão digital primeiro e, se falhar ou se não encontrar assinaturas de impressão digital no diretório inicial do usuário, prossegue para o login com senha.

Você também pode modificar outros arquivos no /etc/pam.d/{login,su,sudo,gdm,lightdm} da mesma maneira, por exemplo /etc/pam.d/polkit-1 para autenticação de polkit do GNOME.

Adicionar pam_fprintd.so como sufficient a qualquer arquivo de configuração em /etc/pam.d/ quando houver uma assinatura de impressão digital, solicitará apenas a autenticação de impressão digital, impedindo o uso de uma senha.

Para usar uma senha ou uma impressão digital, adicione a seguinte linha ao topo de todos os arquivos necessários:

/etc/pam.d/sudo
auth        sufficient      pam_unix.so try_first_pass likeauth nullok
auth        sufficient      pam_fprintd.so
...

Isso solicitará uma senha; se o campo for deixado em branco e pressionar for pressionado, continuará a autenticação de impressão digital

Criar assinatura de impressão digital

Para adicionar uma assinatura para um dedo, execute:

$ fprintd-enroll

ou crie uma assinatura para todos os dedos:

$ fprintd-delete "$USER"
$ for dedo in {left,right}-{thumb,{index,middle,ring,little}-finger}; do fprintd-enroll -f "$dedo" "$USER"; done

Você será solicitado a fazer a leitura do dedo informado, considerando que "thumb" é polegar, "index" é o dedo indicador, "middle" é o dedo médio, "ring" é o dedo anelar, "little" é o dedo mínimo. Passe o dedo indicador direito cinco vezes. Depois disso, a assinatura é criada em /var/lib/fprint/.

Para mais informações, consulte fprintd(1).

Restringir registro

Por padrão, você tem permissão para registrar novas impressões digitais sem solicitar a senha ou a impressão digital. Você pode alterar esse comportamento usando as regras do Polkit.

Existem dois locais que contêm os arquivos de configuração do polkit:

  • /etc/polkit-1/rules.d/
  • /usr/share/polkit-1/rules.d/
Nota: Você não deve modificar os arquivos em /etc/polkit-1/rules.d porque eles serão substituídos na atualização. Copie-os em /usr/share/polkit-1/rules.d/ primeiro.

No exemplo a seguir, apenas o superusuário pode registrar impressões digitais:

/usr/share/polkit-1/rules.d/50-net.reactivated.fprint.device.enroll.rules
polkit.addRule(function (action, subject) {
  if (action.id == "net.reactivated.fprint.device.enroll") {
    return subject.user == "root" ? polkit.Result.YES : polkit.result.NO
  }
})