Ubuntu 16.04 autenticação USB ou externa

0

Eu quero poder fazer o login através de USB ou algum método de autenticação externo. Ou seja, Ligue a área de trabalho, solicitado com a tela de login Eu conecto o USB e ele me logins. Após a remoção do USB, ele bloqueia a tela. Basta conectá-lo para desbloquear a tela novamente. Existe algum aplicativo disponível para isso? ou talvez por um cartão inteligente?

    
por SomeRandomGuy 09.01.2017 / 20:57

1 resposta

0

Melhor abordagem

Procure um módulo PAM que atenda às suas necessidades. Essa é a melhor maneira de fazer o que você está tentando fazer!

Se você não encontrar algo nos repositórios, tente criar scripts. Combinando udev, criptografia, xdotool , espaço não utilizado no início de uma unidade USB e testes para ver se você está na tela de bloqueio, você pode fazer isso acontecer.

Instruções gerais:

  • Crie uma senha segura para sua conta
  • Criptografar (eu uso gpg e criptografia simétrica) essa senha com um arquivo-chave que você armazenará algum lugar seguro em seu computador
  • Use um editor hexadecimal para encontrar espaço não utilizado em seu pendrive antes da primeira partição que seja pelo menos tão grande quanto sua senha criptografada.
  • Escreva a senha criptografada para o espaço não utilizado em seu pendrive antes da primeira partição ( dd é útil aqui). Tenha muito cuidado se você escrever para o espaço que é usado para o gerenciamento do sistema de arquivos, você pode "lixeira" seus dados!
  • Se você não está confiante em sua capacidade de realizar as duas últimas etapas sem perda de dados, basta salvar o arquivo criptografado no seu USB como qualquer outro arquivo
  • Instale o programa de linha de comando, xdotool
  • Escreva uma regra do udev para chamar um script na inserção de um dispositivo específico
  • Escreva um script (que será chamado pelo udev na regra que você acabou de escrever)
    • verifica o estado da tela de bloqueio
    • se bloqueado, retira a senha criptografada do USB (use dd para isso)
    • descriptografar a senha com a chave no computador
    • use xdotool para enviar a senha para o campo de entrada de senha seguido por um toque de tecla de retorno para acessar / desbloquear o sistema.
  • Escreva uma regra do udev para observar a remoção do seu pendrive. Quando for removido, envie o comando para bloquear a tela

Ao criptografar a senha antes de copiá-la para o pendrive, você garante que, se perder o pendrive, sua senha não está em texto simples. Se alguém obter a chave de descriptografia da sua senha fora do seu sistema, ela será inútil sem a senha criptografada armazenada no seu USB.

Confira uma resposta que escrevi para uma pergunta diferente onde forneço instruções mais detalhadas. Esse post provavelmente poderia se beneficiar de alguma atualização, e se eu tiver tempo para fazer isso no futuro próximo, eu vou.

Isso pode ser facilmente ajustado para verificar os USBs inseridos em uma lista mestre gerenciada centralmente em um servidor. É claro que o armazenamento de senhas talvez precise ser gerenciado de maneira um pouco diferente.

    
por b_laoshi 19.04.2017 / 09:46