No login, tire uma foto do usuário na janela Login (loginGUI promt window)

1

Eu tenho código para tirar uma foto em um script. Não entendo como executar esse script no momento do login. Eu gostaria de modificar o processo de login para que:

  • O usuário recebe 3 tentativas de login.
  • Após 3 falhas, meu script é executado para tirar uma foto com a webcam.

Onde posso configurar o que acontece quando um usuário tenta efetuar login?

    
por SachiN 20.02.2013 / 18:39

2 respostas

2

Na maioria dos sistemas unix (mas não em todos), o PAM lida com autenticação, então você precisa conectar seu script a infraestrutura do PAM. Você precisará ler algumas partes do guia dos administradores do PAM .

A configuração do PAM está em /etc/pam.conf ou /etc/pam.d/* . Você desejará executar seu script na auth stack . Passe por cima quando a autenticação for bem-sucedida (algo como [success 1] no último componente necessário) e torne-a uma entrada requisite .

Você não especifica em que você deseja basear seu número de tentativas de login. Por usuário? Por unidade de tempo? Dependendo da resposta, talvez seja necessário incluir uma configuração adicional do PAM ou fazer mais trabalhos no script.

Desligar a máquina é um pouco bobo. E se estivesse fazendo algo útil, como uma computação de segundo plano ou um usuário remoto? A taxa de tentativas de login no console não é preocupante de qualquer maneira, a menos que alguém tenha trazido hardware para automatizá-los, e nesse caso eles podem pegar seu disco rígido e executá-lo.

    
por 21.02.2013 / 02:54
0

Sim, precisamos da versão do SO (Linux? BSD? ...) da distribuição (Fedora, Debian, OpenSuSE?) da versão da distro ... etc.

Sem essa informação é realmente difícil dizer ...

De qualquer forma, supondo que você esteja usando algum sabor do Linux e que a distribuição tenha a estrutura do GStreamer instalada ou que possa ser instalada, você pode usar as ferramentas de linha de comando do GStreamer para fazer o que quiser. Você realmente não precisa estar executando uma sessão X (gráfica) AFAIK:

Captura de quadro único com gstreamer

Depois de experimentar o comando acima e funcionar, deve ser fácil criar um script que leia /var/log/faillog e procurar tentativas de login com falha e, em seguida, você pode fazer o que precisar.

Apenas algumas notas:

  • Você precisará ter suporte a v4l (Video For Linux) compilado em seu kernel
  • Certifique-se de que sua webcam seja suportada pela v4l primeiro. Verifique seus documentos de distro.
  • Provavelmente, você precisará da execução da permissão raiz em seu script para poder desligar o computador
  • Talvez seja necessário tornar o script um serviço para que ele seja executado na inicialização e seja executado em segundo plano, não importando o quê ...
por 21.02.2013 / 02:07