Redefinir a senha do usuário sem root

8

Existe alguma maneira de permitir que usuários não root alterem a senha de outros usuários. Especificamente, existe uma maneira de conceder aos funcionários do suporte técnico a capacidade de redefinir a senha. O suporte técnico já pode redefinir as senhas do Windows, o que é fácil de delegar.

Eles estão em vários tipos de servidores, embora a maioria no HP-UX. Infelizmente, os aplicativos executados no servidor nos impedem de usar LDAP, portanto esses servidores são independentes e os usuários esquecem suas senhas. Frequentemente. Exigir um administrador de servidor que saiba a senha root, especialmente no meio da noite, é um desperdício de recursos.

Se possível, isso também impede que o usuário altere a raiz, como o Windows impede que os usuários alterem senhas de administrador de contas que não sejam de administrador.

Brian
fonte

Respostas:

8

Adicione um grupo chamado helpdesk e adicione todos os usuários do heldesk. Em seguida, adicione o seguinte ao arquivo sudoers.

%helpdesk ALL=/usr/bin/passwd

Agora eles podem sudo para alterar senhas, mas nada mais.

Jim
fonte
1

Dado que o HP-UX é compatível com o PAM , ouso mencionar a seguinte abordagem limpa tentativa para resolver esse problema aqui:

use pam_tcb (tcb - a alternativa ao / etc / shadow) , e haverá arquivos de senha dos usuários por usuário - eles podem ser manipulados sem direitos de root (na verdade, no Owl, passwd não é o setUID root), e você pode dar permissão para modificar as senhas de certos usuários (e não os outros, digamos, "root") para um grupo específico (simplesmente modificando as permissões dos arquivos de sombra).

Mas ainda não é uma solução prática pronta, provavelmente porque não vejo uma porta pam_tcbpara o HP-UX.

imz - Ivan Zakharyaschev
fonte
-1

Atualização: esqueça, a senha já está definida como raiz. Opa

Você pode atribuir o atributo setuid ao programa passwd. Apenas faça

sudo chmod u+s `which passwd`

Em seguida, verifique se apenas alguns usuários podem usá-lo, altere o grupo e restrinja as permissões:

sudo chgrp password_reset_delegates `which passwd`
sudo chmod 770 `which passwd`

E adicione seus usuários a esse grupo

sudo adduser frank password_reset_delegates
sudo adduser barbara password_reset_delegates

Você pode fazer uma cópia do programa passwd sem o setuid para que outros usuários possam alterar sua própria senha.

Como alternativa, você pode configurar o sudo e permitir o acesso do sudo apenas ao programa passwd para os usuários do suporte técnico.

James
fonte
O uso do método de acesso sudo também criará uma boa trilha de auditoria para revisão, se necessário. Você poderá ver quem está fazendo o quê e para quais usuários.
Mcmeel 19/05
sudo é a maneira que eu iria, mas alguém já postou isso, e eu pensei em apresentar opções.
James
Idéia potencialmente inteligente, exceto pelo fato de passwdjá executar o suid root, pois ele precisa gravar nos bancos de dados de senhas do sistema.
19611 MikeyB
haha, opa, você está certo.
James
Considere excluir sua resposta se estiver errada;).
Bart De Vos