Executando um script de shell em X tentativas de login com falha

2

Gostaria de executar um script se o login na minha máquina falhar 3 vezes (não o ssh, mas alguém no terminal tentando fazer login ou alguém tentando fazer login fisicamente). Além disso, é possível configurar a quantidade de vezes antes de executar o script?

Eu olhei para o PAM e, pelo que entendi, você só pode executar .so arquivos, e parece um incômodo enorme para configurar. Alguma alternativa?

Outra coisa que pensei é que talvez o Linux execute algum script quando o login falhar. Em caso afirmativo, eu poderia acrescentar sh /var/myscript.sh ou qualquer outra coisa. Alguma idéia?

Eu não consigo encontrar em qualquer lugar na internet que cubra isso. Se for possível executar um script a cada vez que você tiver uma tentativa de login com falha, eu posso lidar com isso.

    
por Arin 23.01.2017 / 03:57

1 resposta

3

Tudo bem. Eu percebi isso. Tenha muito cuidado para não estragar, porque você pode estragar o seu sistema se você fizer isso errado. Se você não se sentir confortável com isso, provavelmente será melhor experimentá-lo em uma máquina virtual primeiro.

Tutorial

  1. Crie seu script. Neste tutorial, colocarei o script em /var/myscript.sh . Você pode substituir com segurança o caminho do script para onde quer que seu script esteja. Certifique-se de que o script não saia, sob nenhuma circunstância, com qualquer código diferente de 0. Além disso, adicione o comando exit 0 ao final do script para ter certeza de que ele sai corretamente. Não deixe de testar o script antes de continuar.
  2. Torne seu script executável com chmod +x /var/myscript.sh
  3. Antes que o trabalho real aconteça, caso você se atrapalhe, abra o Terminal e digite sudo -i . Apenas deixe essa janela aberta no caso.
  4. %código%. Você pode substituir gksudo nano /etc/pam.d/common-auth por qualquer editor de texto. Para fazer um backup, você pode fazer nano
  5. Encontre a linha abaixo: %código%
  6. Nessa linha, altere sudo cp /etc/pam.d/common-auth /etc/pam.d/common-auth.bkup para auth [success=1 default=ignore] pam_unix.so nullok_secure . Isso é para garantir que o script não seja executado se o login for bem-sucedido.
  7. Adicione essa linha diretamente abaixo da linha na etapa 5: %código%
  8. Salve e feche.
  9. Sem reinicializar ou "relogar", abra um novo terminal e execute success=1 .
  10. Digite intencionalmente a senha errada e verifique se o script funcionou. Em seguida, tente o passo 9 novamente, mas com a senha correta. Certifique-se de que você pode fazer o login.

Créditos

Graças a muitas documentações e postagens, especialmente este .

    
por 23.01.2017 / 04:21