Esta configuração foi testada no Ubuntu 16.04.1 LTS Server. Modifique /etc/pam.d/common-auth
.
# [...]
auth [success=2 default=ignore] pam_unix.so nullok_secure
auth [success=1 default=ignore] pam_succeed_if.so user = the_username
# [...]
auth requisite pam_deny.so
# [...]
auth required pam_permit.so
# [...]
- A parte
success=x
diz ao PAM para ignorar as regrasx
no sucesso. - Substitua o nome de usuário real por
the_username
, acima.
Assim, todos os usuários tentam primeiro autenticar com pam_unix.so
, o que requer um nome de usuário e senha corretos para ter sucesso. Se a autenticação for bem-sucedida com pam_unix.so
, prossiga para pam_permit.so
. Esse é o comportamento padrão.
Se a autenticação falhar com pam_unix.so
, prossiga para pam_succeed_if.so
, que é bem-sucedido sempre que um usuário digita o nome de usuário de the_username
, usando qualquer senha digitada. Se ambos pam_unix.so
e pam_succeed_if.so
falharem, prossiga para pam_deny.so
; caso contrário, prossiga para pam_permit.so
.
Uma palavra de cautela: tenha muito cuidado com um sistema em tempo real porque é fácil cometer um erro e bloquear-se, provavelmente exigindo uma correção por meio da mídia de resgate.