O Sudo, em sua configuração mais comum, exige que o usuário digite sua senha. Normalmente, o usuário já usou sua senha para autenticar a conta e digitar a senha novamente é uma maneira de confirmar que o usuário legítimo não abandonou o console e foi seqüestrado.
Na sua configuração, a senha do usuário seria usada apenas para autenticação no sudo. Em particular, se a chave SSH de um usuário for comprometida, o invasor não poderá elevar os privilégios de root no servidor. O invasor pode plantar um keylogger na conta, mas esse keylogger seria detectável por outros usuários e poderia até ser assistido automaticamente.
Normalmente, um usuário precisa saber sua senha atual para alterá-la para uma senha diferente. O programa passwd
verifica isso (pode ser configurado para não, mas isso não é útil ou de todo desejável em seu cenário). No entanto, o root pode alterar a senha de qualquer usuário sem conhecer o antigo; portanto, um usuário com poderes sudo pode alterar sua própria senha sem inseri-la no prompt passwd
executando sudo passwd $USER
. Se sudo
estiver configurado para exigir a senha do usuário, o usuário deverá digitar a senha para sudo
mesmo assim.
Você pode desativar a autenticação de senha seletivamente. Na sua situação, você desabilitaria a autenticação de senha no ssh e possivelmente em outros serviços. A maioria dos serviços na maioria dos unices modernos (incluindo o Ubuntu) usa o PAM para configurar os métodos de autenticação. No Ubuntu, os arquivos de configuração do PAM vivem em /etc/pam.d
. Para desabilitar a autenticação de senha, comente a linha auth … pam_unix.so
em /etc/pam.d/common-auth
. Além disso, certifique-se de ter PasswordAuthentication no
em /etc/ssh/sshd_config
para desativar a autenticação de senha integrada do sshd.
Você pode permitir que alguns usuários administrativos efetuem login com uma senha ou permitir a autenticação de senha no console. Isso é possível com o PAM (é bastante flexível), mas eu não poderia dizer o quão fora do topo da minha cabeça; faça uma pergunta separada se precisar de ajuda.