Desligamento após N tentativas inválidas (lockscreen + tty)

Desligamento após N tentativas inválidas (lockscreen + tty)

eu tenho vistoessa questãono AskUbuntu sobre como monitorar a tela de bloqueio. No entanto, imagine ter uma unidade criptografada + partição inicial. Ambos estão montados e disponíveis enquanto você está logado.

O problema é que o número de tentativas não é limitado. Como posso ouvir tentativas malsucedidas e depois de N tentar desligar a máquina para evitar qualquer ação adicional que possa atingir meu armazenamento por meio de ataque de dicionário ingênuo (por exemplo, amigo/visita/...) na tela de bloqueio?

Existe também alguma maneira de ouvir tentativas malsucedidas via tty? Por exemplo, se alguém tentar fazer login via tty1 duas vezes e tty2 uma vez (ou seja, soma de todas as tentativas 3), desligue a máquina também?

Responder1

Existem vários módulos PAM que podem limitar o número de tentativas ao longo do tempo, por exemplo, pam_tally2estão disponíveis na maioria das distribuições Linux.

Você também pode criar módulos PAM personalizados, em C ou usando pam_execpara executar shellscripts personalizados. Por exemplo, se a pilha PAM for assim:

(...)
auth [success=1 new_authtok_reqd=ok default=bad] pam_unix.so
auth optional pam_exec.so /usr/local/bin/count-or-shutdown.sh
(...)

então, cada entrada de senha bem-sucedida irá pular a linha pam_exec, mas cada login com falha irá executá-la.

informação relacionada